Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# cshtml中的OpenFileDialog_C#_Asp.net Mvc_Razor - Fatal编程技术网

C# cshtml中的OpenFileDialog

C# cshtml中的OpenFileDialog,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,我可以在Razor中编写类似于c#Opendialog的东西吗?我正在尝试创建一个openfiledialog,使用户可以将照片上载到SqlServerCe数据库: OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.InitialDirectory = "c:\\"; openFileDialog1.Filter = "All files (*.*)|*.*"; openFileDialog1.Filt

我可以在Razor中编写类似于c#Opendialog的东西吗?我正在尝试创建一个openfiledialog,使用户可以将照片上载到SqlServerCe数据库:

OpenFileDialog openFileDialog1 = new OpenFileDialog();

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

if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
   try
   {
      string path = openFileDialog1.FileName;
      byte[] image = File.ReadAllBytes(path);
      string query = "UPDATE firma SET logo=@Image WHERE id = 1";
      SqlCommand sqlCommand = new SqlCommand(query, conn);
      sqlCommand.Parameters.AddWithValue("@Image", image);
      conn.Open();
      sqlCommand.ExecuteNonQuery();
      conn.Close();
   }
   catch (Exception ex)
   {
      MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
   }

您不能在web应用程序中使用特定的OpenFileDialog(la c#/winforms/wpf)(如果不使用Silverlight或其他插件)

您所能做的就是使用文件输入标记,当用户点击浏览按钮时,该标记将导致浏览器打开其默认文件浏览器对话框:

<input type="file" name="elementName" />

发布表单时,该文件将作为输入流的一部分包含


有关
元素的完整规范,请转到此处:

您的
连接对象在哪里?您发布的代码中没有列出它。