netmvc上傳
1. .NET MVC 上傳文件時怎麼修改上傳的文件名
文件到服務端後你自己寫入磁碟,文件名當然是你定了。
2. ASP.NET MVC怎麼上傳圖片
/// <summary>
/// 上傳圖片處理
/// </summary>
/// <param name="ImgType"></param>
/// <returns></returns>
public string CheckImg(HttpPostedFileBase Files,string NameStr)
{
if (Files == null) return "";
string FileType = Files.FileName.Substring(Files.FileName.LastIndexOf(".") + 1);
if (FileType == "gif" || FileType == "GIF" || FileType == "jpg" || FileType == "JPG" || FileType == "png" || FileType == "PNG")
{
//新的文件名
string ImgName = NameStr + DateTime.Now.ToString("yyyyMMddHHmmssfff")+"."+FileType;
Files.SaveAs(Server.MapPath("/schoolUp/"+ImgName));
return ImgName;
}
else
{
return "";
}
}
3. .net MVC中 在視圖中上傳的附件圖片怎麼保存到資料庫
圖片保存到資料庫不是最佳的選擇.
你可以搜索一下Uploadify 插件. 這個插件非常好用
一般將圖片存為圖片文件.
大致代碼如下:
$("#btn_upload_attachment").uploadify({
height: 25,
swf: '../Scripts/plugin/uplodify/uploadify.swf',
uploader: '/Home/Upload',
queueSizeLimit: 1,
formData: { ID: newId },
buttonText: '選擇文件',
width: 80,
onUploadSuccess: function (file, data, response) {
eval("data=" + data);
AddToAttachmentList(data.Data);
}
});
後台代碼處理:
[AcceptVerbs(HttpVerbs.Post)]
public JsonResult Upload(HttpPostedFileBase fileData, Guid? ID)
{
if (fileData != null)
{
try
{
// 文件上傳後的保存路徑
var filePath = Path.Combine(ConfigurationManager.AppSettings["BusinessFiles"], Ticket.OrgId.ToString());
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
var fileName = Path.GetFileName(fileData.FileName);// 原始文件名稱
var fileExtension = Path.GetExtension(fileName); // 文件擴展名
var fileID = Guid.NewGuid();
var saveName = fileID.ToString() + fileExtension; // 保存文件名稱
fileData.SaveAs(filePath + "/" + saveName);
// 作為臨時附件存入附件表
var attachments = new Attachments();
attachments.ID = fileID;
attachments.OrgID = Ticket.OrgId;
attachments.BusinessType = (byte)BusinessType.TransferContract;
attachments.Status = (byte)AttachmentStatus.Temp;
if (ID.HasValue)
{
attachments.BusinessID = ID.Value;
}
attachments.Extension = fileExtension;
attachments.Name = fileName;
attachments.Size = fileData.ContentLength;
attachments.UploadTime = GetNow();
attachments.UploadBy = Ticket.EmployeeName;
attachments.UploadByID = Ticket.UserId;
AttachmentsBLL.SaveAttachment(attachments);
return Json(new { Success = true, FileName = fileName, SaveName = saveName, FileID = fileID, Data = attachments });
}
catch (Exception ex)
{
return Json(new { Success = false, Message = ex.Message }, JsonRequestBehavior.AllowGet);
}
}
else
{
return Json(new { Success = false, Message = "請選擇要上傳的文件!" }, JsonRequestBehavior.AllowGet);
}
}
4. ASP.NET mvc上傳多個附件
asp.net默認上限40960K 90秒請求就超時。你是不是傳多了
5. asp.net mvc 里如何提交表單同時上傳圖片
能說具體點嗎?如果你安裝的是mvc
1.0的話可以參考,裡面有個注冊用戶,然後在伺服器端驗證的方法。就是在accountcontroller.cs里
6. asp.net mvc 上傳照片保存到資料庫
照片存到資料庫,有兩種方式,一種直接圖片轉成二進制文件存到資料庫,另一種將圖片放在伺服器指定文件中,在資料庫中存儲圖片物理路徑,如果圖片較多,建議存圖片對應物理路徑
7. 我使用.NET MVC無法上傳文件至伺服器
1.表單的 enctype 需要設置為 multipart/form-data
2.文件域的控制項需要有name屬性。
8. asp.net mvc2.0 上傳多個文件問題
for (fileCount = 0; fileCount < files.Count; fileCount++)
{
//定義訪問客戶端上傳文件的對象
System.Web.HttpPostedFile postedFile = files[fileCount];
string FileType = postedFile.ContentType.ToString();//獲取要上傳的文件類型,驗證文件頭
string fileName, fileExtension;
//取得上傳得文件名
fileName = System.IO.Path.GetFileName(postedFile.FileName);
//取得文件的擴展名
fileExtension = System.IO.Path.GetExtension(fileName);
//在上傳文件不為空的情況下,驗證文件名以及大小是否符合,如果不符合則不允許上傳
if (((FileType == "text/plain" && fileExtension.ToLower() == ".txt") || (FileType == "application/x-zip-compressed" && fileExtension.ToLower() == ".zip") || (FileType == "application/octet-stream" && fileExtension.ToLower() == ".rar"))&&postedFile.ContentLength/1024<=1024)
{//在這里通過檢查文件頭與文件名是否匹配 從而限制了文件上傳類型 註:可上傳的類型有TXT,ZIP,RAR,且大小隻能為1M一下
if (fileName != String.Empty)
{
fileName = RandomFileName() + fileExtension;
//上傳的文件信息
strMsg.Append("上傳的文件類型:" + postedFile.ContentType.ToString() + "<br>");
strMsg.Append("客戶端文件地址:" + postedFile.FileName + "<br>");
strMsg.Append("上傳文件的文件名:" + fileName + "<br>");
strMsg.Append("上傳文件的大小為:" + postedFile.ContentLength + "位元組<br>");
strMsg.Append("上傳文件的擴展名:" + fileExtension + "<br><hr color=red>");
//保存到指定的文件夾
postedFile.SaveAs(Server.MapPath("public_file/" + UserName + "/") + fileName);
fileName = "";
}
}
比如這段代碼來說,它不是通過for遍歷了,然後不就可以得到你需要的文件了,你可以在裡面在進行判斷一下,不就OK了。!~~~~~
9. Asp.Net MVC3 上傳文件問題
可以考慮一下以下代碼:首先創建:一 創建表單
@using (Html.BeginForm("Index", "Home", FormMethod.Post, new { enctype = "multipart/form-data" })){ <input type="file" name="file" /> <input type="submit" value="OK" />}
二 創建controlle
public class HomeController : Controller{ // This action renders the form public ActionResult Index() { return View(); } // This action handles the form POST and the upload [HttpPost] public ActionResult Index(HttpPostedFileBase file) { // Verify that the user selected a file if (file != null && file.ContentLength > 0) { // extract only the fielname var fileName = Path.GetFileName(file.FileName); // store the file inside ~/App_Data/uploads folder var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName); file.SaveAs(path); } // redirect back to the index action to show the form once again return RedirectToAction("Index"); }}
10. asp.net mvc 如何不用form上傳文件
html與伺服器交互本質就是form提交,不用form伺服器不可能得到數據。
$.ajax()裡面構造form表單然後把file標簽append到form中post提交。注意上傳form的屬性類型要加multi....data(忘記名字了類似這個)