cshtml中的OpenFileDialog

我可以知道我可以在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或其他插件)。

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

  

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

有关元素的完整规范,请访问: http : //www.w3schools.com/tags/tag_input.asp