Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 是否需要mvc建议来创建/新建分配给模型的视图?_C#_Asp.net Mvc_Model View Controller_Model - Fatal编程技术网

C# 是否需要mvc建议来创建/新建分配给模型的视图?

C# 是否需要mvc建议来创建/新建分配给模型的视图?,c#,asp.net-mvc,model-view-controller,model,C#,Asp.net Mvc,Model View Controller,Model,我对mvc的设置还很陌生,请耐心等待。。 所以我有这两个模型 public class Promoter { public int Id {get; set;} public string Name {get;set;} public ICollection<Event> AllEvents {get;set;} } public class Event { public int Id {get;set;} public string

我对mvc的设置还很陌生,请耐心等待。。 所以我有这两个模型

public class Promoter
 {
    public int Id {get; set;}
    public string Name {get;set;}

    public ICollection<Event> AllEvents {get;set;}
 }

public class Event
 {
    public int Id {get;set;}
    public string Name {get;set;}
    public date Date {get;set;}
    public int PromoterId {get; set;}

    public virtual Promoter Promoter {get;set;}
 }
因此,我的问题是,在新操作上,如何确保新视图能够有一个与之相关的发起人标识符?我想hiddenfor有促销Id,这样当帖子被调用时,Id就会出现,但是当我调用新的操作时,我必须传递促销Id? 或者你认为我应该在进入该页面之前将促销员的详细信息存储在cookie中吗? 需要注意的另一件事是,用户将通过身份验证,并且需要登录才能访问促销控制器(此线程中未显示),然后用户可以在该控制器上转到所述事件控制器,该控制器将具有新操作

我希望这是有道理的。 需要一些建议,非常感谢您的想法/想法

谢谢


G

您的想法是正确的,您需要将promotionId传递给新操作,而操作需要将其传递给视图。这也可以通过cookie实现,但我认为动作参数更方便——因为动作参数将位于url中,所以用户甚至可以将其添加书签,发送给其他用户,等等

public class EventsController : Controller
{
   public ActionResult New()
   {
        return View()
   }
   [HttpPost]
   public ActionResult New(Model model)
   {
       // do stuff to save the new Event related to Promotion
   }
}