私の質問を正確に表現する方法がわからないため、おそらくどこにもこの例を見つけることができません。私は MVC4 と EF5 (Web API も) をいじっていますが、これまで実際に多くのことをする必要がなかったため、モデルの処理方法がわかりません。私は元素の周期表について何かをしていて、電子配置を持つ元素のリストを作成できるようにしたいと考えています。ただし、入力順序に基づいて自動番号付けしたいと思います。フィールドを自動インクリメントするように EF に指示するにはどうすればよいですか? 基本的に、その背後にある制限のない主キー フィールドのようなものです。これが私がこれまでに持っているものです-どのように進めればよいかわかりません:
public class Elements
{
public int ElementID { get; set; }
public string Name { get; set; }
public int AtomicNumber { get; set; }
public string Symbol { get; set; }
public virtual Categories Category { get; set; }
public virtual States State { get; set; }
public virtual Occurences Occurence { get; set; }
public virtual ICollection<Configurations> Configuration { get; set; }
}
public class Categories
{
public int CategoryID { get; set; }
public string CategoryName { get; set; }
}
public class States
{
public int StateID { get; set; }
public string StateName { get; set; }
}
public class Occurences
{
public int OccurenceID { get; set; }
public string OccurenceName { get; set; }
}
public class Configurations
{
public int ConfigurationID { get; set; }
public int Order { get; set; }
public int Value { get; set; }
}
私が望むのは、Configurations.Order に値が追加されるたびに、値が 1 から始まり、新しい「行」ごとに増加しますが、その特定の ElementID に対してのみです。
それは理にかなっていますか?データ注釈の使用を検討していましたが、キー フィールド以外に一致するものは見つかりませんでしたが、それによって各注文が一意の番号になってしまいます。これは望ましくありません。私はそれを理解するために見てきたすべてのもののために、これを正しく表現していないように感じるので、ここに写真があります! わーい!
これは、プログラムの観点からは、より良いものになる可能性があります。このデータはブルームーンで一度変更されますが、可能であれば EF を介してそれを試してみたいと思っていました。
事前に感謝します。また、他に明らかなエラーが見られた場合は、ぜひお知らせください :) 私は Web 開発のこちら側で作業することはめったにないので、もっとうまくやる方法があると確信しています。