gpt4 book ai didi

c# - 在 SilverLight 中上传文件?

转载 作者:太空宇宙 更新时间:2023-11-03 11:47:15 24 4
gpt4 key购买 nike


我尝试在 Silver-Light 中上传文件。为此,我使用 System.IO.File 读取文件字节,然后将数据发送到服务以将该数据作为文件数据插入到数据库中。
(吹代码)

        byte[] data;
OpenFileDialog open = new OpenFileDialog();
open.Filter = "Excel Files (*.xlsx)|*.xlsx";
if (open.ShowDialog()==true)
{
open.File.OpenRead();
data=System.IO.File.ReadAllBytes(open.File.FullName);
//---- send for service ---Service.savefileindatabase(data);
}

所以当在包含 VS 抛出的“ReadAllBytes”异常的行中使用此代码时,这是异常详细信息:
“不允许文件操作。访问路径 '' 被拒绝。”
(有关我选择的文件在本地驱动器中的更多信息)

那我该怎么办?

最佳答案

在 Silverlight 中有比通常的 wpf 编程更多的限制。您可能上传的文件可能仅位于特定目录中,并且某些方法不可用,例如 File.FullName。只能上传手动选择的文件。您的起始代码没问题。但是在 silverlight 中,您无权访问路径(只能访问名称)。

有一些 OpenTextOpenRead 方法可以让您从所选文件中获取流。从那时起,您将能够使用来自流的数据做您想做的事。

if (open.ShowDialog())
{
using (StreamReader reader = open.SelectedFile.OpenRead())
{
...
}
}

关于c# - 在 SilverLight 中上传文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3107392/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com