2013-08-24 29 views
8

kullanma C# MVC4 ayarlanmamışNesne Referans bir nesnenin (adlı çağıran Ustura modeli)

Benim Görünüm:

@using Universe.Models 
@model UserModel 
@section css { 
<link href="@Url.Content("~/Content/assets/charcreation.css")" rel="stylesheet"/>} 
@using (Html.BeginForm("AddUser","Home", FormMethod.Post)) 
{ 

<div class="row-fluid"> 
      <table id="tblBio"> 
       <tr> 
        <td class="span3"> 
         <span class="labeltext">Alias:</span> 
        </td> 
        <td class="span5"> 
         @Html.TextBox(Model.Alias) 
        </td> 
        <td class="span4"> 
         <span class="ui-state-highlight hidden"></span> 
        </td> 
       </tr> 

Benim Modeli:

public class UserModel 
{ 
    public int Id { get; set; } 
    public string Alias { get; set; } 
    public string Email { get; set; } 
    public string Password { get; set; } 
    public bool IsExternal { get; set; } 


    public UserModel() 
    { 

    } 

    public UserModel(User user) 
    { 
     if (user == null) return; 
     Alias = user.Alias; 
    } 
} 

Ama almaya devam hata:

( )

Hata ayıklamaya çalıştığımda, Html.TextBox yöntemine veya modelime girmiyor.

+2

, kendi Denetleyici Eylem gösterebilir geçmek zorunda .. manzaraya baktığın yer neresi? –

+0

Eh, belki de gerçekten bir nesne örneğine ayarlanmadı mı? Takma adın boş olmadığını kontrol ettiniz mi? – VsMaX

+0

NullReferenceException'ın neredeyse tüm örnekleri aynıdır. Bazı ipuçları için lütfen ".NET'te NullReferenceException nedir?" (Http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-in-net) konusuna bakın. –

cevap

23

Denetleyicinizin eylemini görmeden, tahminim sizin modelinizin boş olması olabilir.

Denetleyicinizde, modelin bir örneğini görünümünüze geçirdiğinizden emin olun.

return View(new UserModel()); 

yerine: Örneğin:

return View(); 
3

listenize Model dönmek için Controller Eylem belirli View tekmeler için

return View(new Model()); 
+0

Teşekkürler, öyleydi! – ArjaaAine

İlgili konular