40

Asp.NET MVC4 アプリケーションで、データベースに追加せずにモデルにフィールドを追加したいと考えています。

モデルの c# インスタンスにのみ存在し、データベース自体には存在しないフィールドの並べ替え。

データベース自体からフィールドを除外する注釈やその他の方法はありますか?

データベースが認識していない実行時に読み書きできるオブジェクトを意味します。

4

2 に答える 2

83

フィールド/プロパティを で装飾するだけ[NotMapped]です。

例えば:

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

    [NotMapped]
    public string Type { get; set; }
}

http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.schema.notmappedattribute.aspxを参照してください。

于 2013-08-13T17:31:37.207 に答える
2

それは、データへのアクセスに使用しているフレームワークによって異なります。Entity Frameworkだと思います。さて、データベースにマップしたくないプロパティを持つ部分クラスを作成できます。

何かのようなもの

public class Class1
{
    string Text { get; set; }

    int Number { get; set; }
}

public partial class Class1
{
    bool IsSomething { get; set; }
}

しかし、それはお勧めできません。詳細: Entity Framework: データベースにマップされないプロパティを追加

または、Code First を使用している場合: Entity Framework 4.1 Code First でクラス プロパティを無視する

于 2013-08-13T17:30:54.723 に答える