1

エンティティ フレームワークを使用して列挙型を操作できるように、アプリケーションを構造化するためのより良い方法を探しています。また、TSQL を使用する必要がある場合 (ストアド プロシージャ、共通テーブル式など) を探しています。エンティティ側ですが、TSQL 側では、たとえば結果を投影し、列挙型文字列の値が必要な場合など、それほど見栄えがよくありません。私はすでに EF 列挙型サポートのチュートリアルをここで見ており、Web や SO の他の例も見ています。標準的な方法を見つけることができないようです

ここのチュートリアルのコードの一部

public enum DepartmentNames
{
  English,
  Math,
  Economics
}    

public partial class Department
{
  public int DepartmentID { get; set; }
  public DepartmentNames Name { get; set; }
  public decimal Budget { get; set; }
}

私の質問のリストは次のとおりです。

  • エンティティへのlinqではなく、ストアドプロシージャまたは共通テーブル式、またはTSQLを必要とするものの場合に列挙型を処理する方法
  • 列挙型の値を格納するための EF のクラスを作成するとします。以下のコードのように同等のクラスを作成し、手動で State1 、State2 の値をEFシード処理など
  • 上記に従って、コードからわかるように、列挙型に名前を付けて構造化する最良の方法は何ですか

例えば

public class SomeStateType
{
    public int SomeStateTypeId { get; set; }
    public string Name { get; set; }

    public enum Type
    {
        State1 = 1,
        State2 = 2,
    }
}
4

2 に答える 2

1

コードに列挙型がいくつかあります。

いくつかのこと:

  • 列挙型は文字列ではありません。上記の例は、それぞれEnglish, Math, Economicsの数値を表してい0,1,2ます。
  • DB をチェックしたところ、列挙型が見つからなかったので、EF はそれらのテーブルを作成していないと思います (ただし、間違っている可能性があります)。
  • Enum を作成すると、上記の例のように、型は Enum になります。あなたの場合、それは次のようになります。public Type *name of your property*

幸運を!

于 2013-10-29T12:56:11.523 に答える