2012-12-24 87 views
0

我不確定這裏發生了什麼。該模型是從數據庫中自動生成的,我看不到任何明顯的東西(請注意,它現在是英國時間上午2點30分,所以也許我已經半睡半醒了)。我收到錯誤:ActiveCitizenSystemMimic.Models.ActiveCitizenProperties不包含一個構造函數,它帶有2個參數。不包含帶2個參數的構造函數

型號:

namespace ActiveCitizenSystemMimic.Models 
{ 
    using System; 
    using System.Collections.Generic; 

    public partial class ActiveCitizenProperties 
    { 
     public int FK_ActiveCitizen { get; set; } 
     public int FK_PropertyType { get; set; } 
    } 
} 

控制器:

List<ActiveCitizenProperties> activeCitizenProperties = new List<ActiveCitizenProperties>(); 
activeCitizenProperties.Add(new ActiveCitizenProperties(1, 2)); 

回答

3

可以更換您的代碼:

List<ActiveCitizenProperties> activeCitizenProperties = new List<ActiveCitizenProperties>(); 
activeCitizenProperties.Add(new ActiveCitizenProperties(){ FK_ActiveCitizen = 1, FK_PropertyType = 2 }); 

你的「自動生成」類顯然不包含一個構造函數需要兩個參數。如果有,它會是這樣:

namespace ActiveCitizenSystemMimic.Models 
{ 
    using System; 
    using System.Collections.Generic; 

    public partial class ActiveCitizenProperties 
    { 
     public int FK_ActiveCitizen { get; set; } 
     public int FK_PropertyType { get; set; } 

     public ActiveCitizenProperties(int a, int b) 
     { 
      this.FK_ActiveCitizen = a; 
      this.FK_PropertyType = b; 
     } 
    } 
} 
+0

完美。也感謝解釋。 – ChrisCurrie

3

的錯誤是什麼意思它說:ActiveCitizenProperties構造函數不接受兩個參數。在代碼中沒有定義類的構造函數。

您可以使用,雖然:

new ActiveCitizenProperties { FK_ActiveCitizen = 1, FK_PropertyType = 2 }; 
+0

感謝abatishchev。我還需要根據Alvin Wong的回答確保我有括號。 – ChrisCurrie

+0

@ user975516:你的意思是'新的ActiveCitizenProperties(){}'而不是'新的ActiveCitizenProperties {}'?它們不是必需的,例如Resharper暗示忽略它們。 – abatishchev

相關問題