новичок в C # и MVC.Чего я хотел бы добиться - это передать переменную ViewData из одного представления в другое представление без использования идентификатора в ActionResult, поскольку это представление генерирует свою собственную переменную.Я уверен, что есть лучшие способы сделать это, но вот то, что я думал, может сработать.Сначала я сделал модель:
public class EventToShow
{
public Int64? ID { get; set; }
public Int64? EventID { get; set; }
}
Затем я передал переменную EventID из первого представления (Telerik MVC GRID), используя следующее:
columns.Template(item => Html.Raw(string.Format("<a href=\"{0}\">{1}</a>", Url.Action("tableread", "Home", new { id = (long)item.Event_ID }), "EventID"))).Width(20);
Это работало, используя следующее в моемконтроллер:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult tableread1(long? id)
{
ViewData["EID"] = id;
EventToShow ctx = new EventToShow();
ctx.ID = 1;
ctx.EventID = (long)ViewData["EID"];
return RedirectToAction("EditServerSide");
}
Чтобы передать переменную в другое представление, я попытался использовать следующее (я думаю, что это очень неправильно):
public ActionResult EditServerSide()
{
EventToShow ctx = new EventToShow();
var model1 = ctx.(x => x.ID == 1); **// The error here is (Identifier** expected)
ViewData["EID"] = ctx.EventID;
var model = from o in new Main().OffLinePayments
select new EditOffLinePayment
{
ID = o.ID,
Amount = o.Amount,
Details = o.Details
};
return View(model, ViewData["EID"]) **(this must be wrong)**
}
Я подумал, может быть, я должен сделатьпеременная, подобная этой:
private string GetFullName()
{
EventToShow ctx = new EventToShow();
var name = EventToShow().Where(x => x.ID == 1);
ViewData["EID"] = ctx.EventID;
return name;
}
Сначала я получил ошибку: 'GridEdit_OfflinePayment.Models.EventToShow' является 'типом', но используется как 'переменная'
Я также не знал , как включить возвращенное [имя] в действие EditServerSide.
Мой вопрос, есть ли лучший способ достичь того, что я пытаюсь сделать, и если этоподход правильный, я был бы признателен за любую помощь, чтобы исправить эти ошибки