2017-08-14 40 views
0

我正在嘗試使用用戶名和密碼創建用戶模型。 我不希望密碼顯示在api響應中,但它在註冊時需要。所以[JsonIgnore]不會工作。 有什麼建議嗎?在JSON輸出上排除對象屬性

public class User { 
    [Required] 
    public string Username { get; set; } 

    [Required] 
    public string Password { get; set; } 
} 
+1

不要將您的域/實體發送給API響應,而是僅使用您需要的屬性創建DTO。 – hugoterelle

+0

你是說你正在使用相同的模型進行兩個操作 - 註冊和其他東西? – cassandrad

回答

3

這就是爲什麼你應該分開你的實體和模型。您應該創建一個模型/視圖模型和發送從您的API/MVC控制器響應像

public class UserModel 
{ 
    public string Username { get; set; } 
} 

另一個忠告,從來沒有在您的實際實體的任何數據驗證,而你應該有這些驗證[Required]你模型/視圖模型;並應該讓實體遠離這種混亂。

+0

坦克,這是一個很好的解釋! –