簡體   English   中英

實體框架通過關系發布到POCO

[英]Entity Framework Post to POCO with relationship

我在使用mvc4的實體框架上有一個C#程序。

我想知道是否有可能(我確定是)讓C#將帖子自動綁定到具有關系的對象。

例如:我有一個Item類,它與User類有關系:

public class Item
{
    public int ItemId{get;set;}
    public string Name{get;set;}

    public virtual User Owner{get;set;}
}

我有一個帶post方法的ItemController:

public class ItemController
{
    ...
    public HttpResponseMessage PostItem(Item item)
    {
         ....
    }
}

發布和動態綁定如何與具有關系的類一起使用?

是的,有可能。 但是,您永遠都不要(很好,幾乎永遠不要)直接發布到EF模型。 原因很多,但安全性高,但是可維護性和(例如,關注點分離)也非常高。

怎么可能是安全問題? 假設您的User屬性的字段為“ IsAdmin”,即使您在視圖中沒有任何對IsAdmin的引用,惡意用戶也可能將Owner.IsAdmin發布為true,如果您保存了Change,則您的用戶現在是管理員。

是的,的確如此,您的應用程序可能無法正常運行。 但是其他細節可能會被黑客入侵,密碼可能會更改或其他許多可能的惡意方式。

通常,永遠不要將數據模型直接傳遞給視圖。 使用中間視圖模型,並且僅在它們之間復制授權值,並且僅在視圖模型中具有視圖所需的字段。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM