我已經在wwwroot中通過ftp連接添加了Content \ UserImages目錄。如何解決這個問題?
如果該目錄不存在,您可以嘗試創建該目錄。
string biodataPath = Server.MapPath("~/Content/UserImages/");
if (!Directory.Exists(biodataPath))
{
DirectoryInfo di = Directory.CreateDirectory(biodataPath);
}
此外,如果可能的話,你可以存儲在您的Azure Blob storage靜態文件。
編輯: 我把源圖像SourceImg.png
在UserImages文件夾,我可以讀取源文件到字節數組,並將其寫入到其他的FileStream。
string biodataPath = Server.MapPath("~/Content/UserImages/");
string pathSource = biodataPath + "SourceImg.png";
//the following code will create new file named 6d8938df-aa4f-40e4-96e3-b2debb6ed992.png
string pathNew = Server.MapPath("~/Content/UserImages/") + "6d8938df-aa4f-40e4-96e3-b2debb6ed992.png";
try
{
using (FileStream fsSource = new FileStream(pathSource,
FileMode.Open, FileAccess.Read))
{
byte[] bytes = new byte[fsSource.Length];
int numBytesToRead = (int)fsSource.Length;
int numBytesRead = 0;
while (numBytesToRead > 0)
{
int n = fsSource.Read(bytes, numBytesRead, numBytesToRead);
if (n == 0)
break;
numBytesRead += n;
numBytesToRead -= n;
}
numBytesToRead = bytes.Length;
// Write the byte array to the new FileStream.
using (FileStream fsNew = new FileStream(pathNew,
FileMode.Create, FileAccess.Write))
{
fsNew.Write(bytes, 0, numBytesToRead);
}
}
}
catch (FileNotFoundException ioEx)
{
Console.WriteLine(ioEx.Message);
}
如果我檢查UserImages文件夾,我能找到的6d8938df-aa4f-40e4-96e3-b2debb6ed992.png
創建。
是否因爲某些許可問題?使用(var docFile = new FileStream(fullBiodataPath,FileMode.Create,FileAccess.ReadWrite)) docFile.Write(bytesBiodata,0,bytesBiodata.Length); docFile.Flush(); } ------這是好嗎? – sreejith
同時在項目運行時不能將其存儲在此處。現在Iam得到這個----找不到路徑的一部分'D:\ home \ site \ wwwroot \ Content \ UserImages \ f79571e6-8410-4b87-b1a4-3af4c702b1fc.png'。 – sreejith
我編輯了我的回覆,請參閱它。 –