我有一个非常基本的mvc项目,带有标准的“编辑”视图,并且我想添加直接从该视图上传文件的选项。
我已经成功地从“创建”视图实现了上载选项,但是由于某些原因,它在“编辑”视图中不起作用。
编辑视图(文件上传和保存)
<div class="form-group">
@Html.Label("Attach File", new { @class = "control-label col-md-2" })
<div class="col-md-10">
<input type="file" id="file" name="upload" />
</div>
</div>
<div>
<input type="submit" value="Save" class="btn btn-default" />
</div>
编辑控制器
// POST: Travel/Edit/5
// To protect from overposting attacks, please enable the specific properties you want to bind to, for
// more details see https://go.microsoft.com/fwlink/?LinkId=317598.
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "TravelID,RequestedBy,DateRequested,TravelDescription,DestinationCity,DestinationState,StartDate,EndDate,EstRegistrationPerPerson,EstAirfarePerPerson,EstGroundPerPerson,EstLodgingPerPerson,EstMealsPerPerson,DepartureCity,DepartureState,DepartureDate,DepartureTimeRange,ReturnFromCity,ReturnFromState,ReturnFromDate,ReturnFromTimeRange,FlightNote,Hotel,HotelPhone,HotelNote,NeedHotelArrangements,NeedFlightArrangements,NeedRentalCarArrangements,IsTripInTravelBudget,Justification,OtherNote,SupAuth,SupAuthDate,CEOAuth,CEOAuthDate,ActRegistrationPerPerson,ActAirfarePerPerson,ActGroundPerPerson,ActLodgingPerPerson,ActMealsPerPerson")] Travel travel, HttpPostedFileBase upload)
{
if (ModelState.IsValid)
{
if (upload != null && upload.ContentLength > 0)
{
var file = new Files
{
TravelID = travel.TravelID,
FileName = System.IO.Path.GetFileName(upload.FileName),
FileType = upload.ContentType
};
using (var reader = new System.IO.BinaryReader(upload.InputStream))
{
file.Content = reader.ReadBytes(upload.ContentLength);
}
travel.Files = new List<Files> { file };
}
db.Entry(travel).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Details", "Travel", new { id = travel.TravelID });
}
return View(travel);
}
提交修改后,所有其他字段都会按预期更新,但不会上传任何文件。
文件模型:
namespace TrainingAndTravel.Models
{
using System;
using System.Collections.Generic;
public partial class Files
{
public int FileID { get; set; }
public int TravelID { get; set; }
public string FileName { get; set; }
public string FileType { get; set; }
public byte[] Content { get; set; }
public virtual Travel Travel { get; set; }
}
}
旅行型号:
namespace TrainingAndTravel.Models
{
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
public partial class Travel
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public Travel()
{
this.Files = new HashSet<Files>();
this.Travelers = new HashSet<Travelers>();
}
[Display(Name = "Travel ID")]
public int TravelID { get; set; }
[Display(Name = "Requested By")]
public string RequestedBy { get; set; }
[Display(Name = "Date Requested")]
[DisplayFormat(DataFormatString = "{0:g}", ApplyFormatInEditMode = true)]
public System.DateTime DateRequested { get; set; }
[Display(Name = "Travel Description")]
public string TravelDescription { get; set; }
[Display(Name = "Destination City")]
public string DestinationCity { get; set; }
[Display(Name = "Destination State")]
public string DestinationState { get; set; }
[Display(Name = "Start Date")]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> StartDate { get; set; }
[Display(Name = "End Date")]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> EndDate { get; set; }
[Display(Name = "Estimated Registration Per Person")]
public Nullable<decimal> EstRegistrationPerPerson { get; set; }
[Display(Name = "Estimated Airfare Per Person")]
public Nullable<decimal> EstAirfarePerPerson { get; set; }
[Display(Name = "Estimated Ground Per Person")]
public Nullable<decimal> EstGroundPerPerson { get; set; }
[Display(Name = "Estimated Lodging Per Person")]
public Nullable<decimal> EstLodgingPerPerson { get; set; }
[Display(Name = "Estimated Meals Per Person")]
public Nullable<decimal> EstMealsPerPerson { get; set; }
[Display(Name = "Departure City")]
public string DepartureCity { get; set; }
[Display(Name = "Departure State")]
public string DepartureState { get; set; }
[Display(Name = "Departure Date")]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> DepartureDate { get; set; }
[Display(Name = "Departure Time Range")]
public string DepartureTimeRange { get; set; }
[Display(Name = "Return From City")]
public string ReturnFromCity { get; set; }
[Display(Name = "Return From State")]
public string ReturnFromState { get; set; }
[Display(Name = "Return From Date")]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> ReturnFromDate { get; set; }
[Display(Name = "Return From Time Range")]
public string ReturnFromTimeRange { get; set; }
[Display(Name = "Flight Note")]
public string FlightNote { get; set; }
public string Hotel { get; set; }
[Display(Name = "Hotel Phone")]
public string HotelPhone { get; set; }
[Display(Name = "Hotel Note")]
public string HotelNote { get; set; }
[Display(Name = "Need Hotel Arrangements")]
public bool NeedHotelArrangements { get; set; }
[Display(Name = "Need Flight Arrangements")]
public bool NeedFlightArrangements { get; set; }
[Display(Name = "Need Rental Car Arrangements")]
public bool NeedRentalCarArrangements { get; set; }
[Display(Name = "Is Trip In Travel Budget")]
public bool IsTripInTravelBudget { get; set; }
public string Justification { get; set; }
[Display(Name = "Other Note")]
public string OtherNote { get; set; }
[Display(Name = "Supervisor Authorization")]
public string SupAuth { get; set; }
[Display(Name = "Supervisor Authorization Date & Time")]
[DisplayFormat(DataFormatString = "{0:g}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> SupAuthDate { get; set; }
[Display(Name = "CEO Authorization")]
public string CEOAuth { get; set; }
[Display(Name = "CEO Authorization Date & Time")]
[DisplayFormat(DataFormatString = "{0:g}", ApplyFormatInEditMode = true)]
public Nullable<System.DateTime> CEOAuthDate { get; set; }
[Display(Name = "Actual Registration Per Person")]
public Nullable<decimal> ActRegistrationPerPerson { get; set; }
[Display(Name = "Actual Airfare Per Person")]
public Nullable<decimal> ActAirfarePerPerson { get; set; }
[Display(Name = "Actual Ground Per Person")]
public Nullable<decimal> ActGroundPerPerson { get; set; }
[Display(Name = "Actual Lodging Per Person")]
public Nullable<decimal> ActLodgingPerPerson { get; set; }
[Display(Name = "Actual Meals Per Person")]
public Nullable<decimal> ActMealsPerPerson { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<Files> Files { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<Travelers> Travelers { get; set; }
}
}
整个编辑视图:
@model TrainingAndTravel.Models.Travel
@{
ViewBag.Title = "Edit";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Edit Travel Request</h2>
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
<div class="form-horizontal">
<hr />
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
@Html.HiddenFor(model => model.TravelID)
<div hidden class="form-group">
@Html.LabelFor(model => model.RequestedBy, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.RequestedBy, new { htmlAttributes = new { @class = "form-control", @readonly = "readonly" } })
@Html.ValidationMessageFor(model => model.RequestedBy, "", new { @class = "text-danger" })
</div>
</div>
<div hidden class="form-group">
@Html.LabelFor(model => model.DateRequested, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.DateRequested, new { htmlAttributes = new { @class = "form-control", @readonly = "readonly" } })
@Html.ValidationMessageFor(model => model.DateRequested, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.TravelDescription, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.TravelDescription, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.TravelDescription, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.DestinationCity, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.DestinationCity, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.DestinationCity, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.DestinationState, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.DestinationState, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.DestinationState, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.StartDate, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.StartDate, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.StartDate, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.EndDate, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.EndDate, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.EndDate, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.EstRegistrationPerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.EstRegistrationPerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.EstRegistrationPerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.EstAirfarePerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.EstAirfarePerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.EstAirfarePerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.EstGroundPerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.EstGroundPerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.EstGroundPerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.EstLodgingPerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.EstLodgingPerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.EstLodgingPerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.EstMealsPerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.EstMealsPerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.EstMealsPerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.DepartureCity, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.DepartureCity, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.DepartureCity, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.DepartureState, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.DepartureState, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.DepartureState, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.DepartureDate, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.DepartureDate, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.DepartureDate, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.DepartureTimeRange, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownListFor(model => model.DepartureTimeRange, TrainingAndTravel.Utils.TimeRangeList.GetTimeRangeList(), new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.DepartureTimeRange, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.ReturnFromCity, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ReturnFromCity, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ReturnFromCity, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.ReturnFromState, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ReturnFromState, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ReturnFromState, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.ReturnFromDate, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ReturnFromDate, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ReturnFromDate, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.ReturnFromTimeRange, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownListFor(model => model.ReturnFromTimeRange, TrainingAndTravel.Utils.TimeRangeList.GetTimeRangeList(), new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.ReturnFromTimeRange, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.FlightNote, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.FlightNote, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.FlightNote, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.Hotel, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Hotel, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.Hotel, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.HotelPhone, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.HotelPhone, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.HotelPhone, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.HotelNote, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.HotelNote, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.HotelNote, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.Justification, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.Justification, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.Justification, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.OtherNote, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.OtherNote, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.OtherNote, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.NeedHotelArrangements, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.CheckBoxFor(model => model.NeedHotelArrangements, new { @class = "checkbox" })
@Html.ValidationMessageFor(model => model.NeedHotelArrangements, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.NeedFlightArrangements, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.CheckBoxFor(model => model.NeedFlightArrangements, new { @class = "checkbox" })
@Html.ValidationMessageFor(model => model.NeedFlightArrangements, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.NeedRentalCarArrangements, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.CheckBoxFor(model => model.NeedRentalCarArrangements, new { @class = "checkbox" })
@Html.ValidationMessageFor(model => model.NeedRentalCarArrangements, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.IsTripInTravelBudget, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.CheckBoxFor(model => model.IsTripInTravelBudget, new { @class = "checkbox" })
@Html.ValidationMessageFor(model => model.IsTripInTravelBudget, "", new { @class = "text-danger" })
</div>
</div>
<div hidden class="form-group">
@Html.LabelFor(model => model.ActRegistrationPerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ActRegistrationPerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ActRegistrationPerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div hidden class="form-group">
@Html.LabelFor(model => model.ActAirfarePerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ActAirfarePerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ActAirfarePerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div hidden class="form-group">
@Html.LabelFor(model => model.ActGroundPerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ActGroundPerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ActGroundPerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div hidden class="form-group">
@Html.LabelFor(model => model.ActLodgingPerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ActLodgingPerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ActLodgingPerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div hidden class="form-group">
@Html.LabelFor(model => model.ActMealsPerPerson, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.ActMealsPerPerson, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ActMealsPerPerson, "", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.Label("Attach File", new { @class = "control-label col-md-2" })
<div class="col-md-10">
<input type="file" id="file" name="upload" />
</div>
</div>
<div>
<input type="submit" value="Save" class="btn btn-default" />
@Html.ActionLink("Cancel", "Details", "Travel", new { id = Model.TravelID }, new { @class = "btn btn-default" })
</div>
</div>
}
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
答案 0 :(得分:0)
您需要在视图的enctype
标记中添加form
属性
查看
<form action="" method="post" enctype="multipart/form-data">
<!-- your remaing code-->
<div class="form-group">
@Html.Label("Attach File", new { @class = "control-label col-md-2" })
<div class="col-md-10">
<input type="file" id="file" name="upload" />
</div>
</div>
<input type="submit" />
</form>
更多信息check here
答案 1 :(得分:0)
我不得不重新布置控制器,将上载部分放在EntityState.Modified和SaveChanges下面,还需要在上载下面放置一个db.SaveChanges():
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "TravelID,RequestedBy,DateRequested,TravelDescription,DestinationCity,DestinationState,StartDate,EndDate,EstRegistrationPerPerson,EstAirfarePerPerson,EstGroundPerPerson,EstLodgingPerPerson,EstMealsPerPerson,DepartureCity,DepartureState,DepartureDate,DepartureTimeRange,ReturnFromCity,ReturnFromState,ReturnFromDate,ReturnFromTimeRange,FlightNote,Hotel,HotelPhone,HotelNote,NeedHotelArrangements,NeedFlightArrangements,NeedRentalCarArrangements,IsTripInTravelBudget,Justification,OtherNote,SupAuth,SupAuthDate,CEOAuth,CEOAuthDate,ActRegistrationPerPerson,ActAirfarePerPerson,ActGroundPerPerson,ActLodgingPerPerson,ActMealsPerPerson")] Travel travel, HttpPostedFileBase upload)
{
if (ModelState.IsValid)
{
db.Entry(travel).State = EntityState.Modified;
db.SaveChanges();
if (upload != null && upload.ContentLength > 0)
{
var file = new Files
{
FileName = System.IO.Path.GetFileName(upload.FileName),
FileType = upload.ContentType
};
using (var reader = new System.IO.BinaryReader(upload.InputStream))
{
file.Content = reader.ReadBytes(upload.ContentLength);
}
travel.Files = new List<Files> { file };
}
db.SaveChanges();
return RedirectToAction("Details", "Travel", new { id = travel.TravelID });
}
return View(travel);
}