问题相当简单,我理解有点无意义,但仍然......
当然,数据库在服务器上,我需要一个动作,当它从数据库中获取该文件并将其保存到我AppSettings["Active"]
配置属性中的文件夹时。
基本上,
public ActionResult Activate(int id)
{
Project project = db.Projects.Find(id);
var activeProjectData = project.XML; // project.XML returns byte[] type
//For download (not in this method of course) i'm using something like return File(activeProjectData, "text/xml"); and that works ok
}
现在我想将该文件保存到AppSettings["Active"]
路径。不确定如何去做。我尝试过使用System.IO.File.Create()
,但结果并不好。
感谢任何帮助。
答案 0 :(得分:3)
只需创建一个FileStream并使用它来编写数据:
string fileName = ConfigurationManager.AppSettings["Active"];
using(var fs = new FileStream(fileName, FileMode.Create, FileAccess.Write) )
{
fs.Write(project.XML, 0, project.XML.Length);
}
如果您不需要更多控制权,File
类上会有simple helper method:
File.WriteAllBytes(fileName, project.XML);
答案 1 :(得分:0)
您需要使用FileStream
SqlCommand ("select fileBin from SomeTable", connection);
byte[] buffer = (byte[]) command.ExecuteScalar ();
connection.Close();
FileStream fs = new FileStream(@"C:\filename.pdf", FileMode.Create);
fs.Write(buffer, 0, buffer.Length);
fs.Close();