VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 870|回复: 7

OpenFileDialog的ShowDialog方法报错

[复制链接]

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-2-2 10:00:01 | 显示全部楼层 |阅读模式
在asp.net的一个click事件中,我使用如下代码:
        Stream myStream;
        OpenFileDialog openFileDialog1 = new OpenFileDialog();

        openFileDialog1.InitialDirectory = "c:\\";
openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
        openFileDialog1.FilterIndex = 2;
        openFileDialog1.RestoreDirectory = true;

        if (openFileDialog1.ShowDialog() == DialogResult.OK)
        {
            if ((myStream = openFileDialog1.OpenFile()) != null)
            {
                // Insert code to read the stream here.
                myStream.Close();
            }
        }
在openFileDialog1.ShowDialog() 这里报错说:
在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式。请确保您的 Main 函数带有 STAThreadAttribute 标记。 只有将调试器附加到该进程才会引发此异常。
回复

使用道具 举报

1

主题

31

帖子

22.00

积分

新手上路

Rank: 1

积分
22.00
发表于 2020-3-19 14:45:01 | 显示全部楼层
ShowDialog应该是WinForm里的用法.
在ASP.NET要显示文件对话框应该用Java脚本来写.
回复

使用道具 举报

0

主题

14

帖子

12.00

积分

新手上路

Rank: 1

积分
12.00
发表于 2020-3-19 16:45:01 | 显示全部楼层
在你的main()函数前面加上一行这样的语句

[STAThread]
回复

使用道具 举报

1

主题

31

帖子

22.00

积分

新手上路

Rank: 1

积分
22.00
发表于 2020-3-19 22:00:01 | 显示全部楼层
好像在ASP.NET中OpenFileDialog用的是File(Input).
回复

使用道具 举报

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-4-6 11:30:01 | 显示全部楼层
五月
asp.net 中没有main 函数呀
回复

使用道具 举报

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-4-6 20:15:01 | 显示全部楼层
file(input)有点问题,当文件大于20MB的时候就无法显示页面了。
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-15 09:45:01 | 显示全部楼层
在你的main()函数前面加上一行这样的语句
[STAThread]
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-5 16:00:01 | 显示全部楼层
我是C#,也报这个错,该怎么解决?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表