2016-10-13 5 views
0

私は、各都市の訪問のツアーや期間に含まれている都市についてのデータを保存したい私は、このような都市、ツアーやtourdetailsなど3つのテーブルエンティティコードで3つのテーブルの間には多くの関係への一つの第一

を考えてみましょう。各ツアーにはいくつかの都市があります。ここ

私のコードは私の問題は、私は、コンパイル時にコードEntity Frameworkのは、すべてのダイアグラムでテーブルを私にTourDetails示していないということです

public class TourDetails 
{ 
    [Required, Key] 
    public int ID { get; set; } 
    [Required] 
    public int Duration { get; set; } 

    [Required] 
    public virtual City City { get; set; } 
    [Required] 
    public virtual Tour TourID { get; set; } 
} 

public class Tour 
{ 
    [Required, Key, MaxLength(5), MinLength(5)] 
    public string ID { get; set; } 
    [Required, MaxLength(20)] 
    public string TourName { get; set; } 
    [Required] 
    public int TotalDuration { get; set; } 
    [Required] 
    public decimal Price { get; set; } 

    [Required] 
    public virtual ICollection<TourDetails> TourDetails { get; set; } 
} 

public class City 
{ 
    [Required, Key] 
    public int ID { get; set; } 
    [Required, MaxLength(20)] 
    public string CityName { get; set; } 

    [Required] 
    public virtual ICollection<TourDetails> TourDetails { get; set; } 
} 

である(表をベースに追加されている) 私はかなり新しいですEntity Framewrokへと教えようとしているので、愚かな質問かもしれませんが、私は適切な答えを得ることを願っています。


問題が解決され、問題が支援し、あなたの時間を気の毒にしようとしたおかげでたくさん、コードと私のSQLマネージャのスタジオではないとあった:)

+0

? –

+0

テーブル間の関係を示すSQLマネージャスタジオのデータベースダイアグラム – Geoman

+0

モデルと外部キーの関係が作成されました。すべてがうまく見えます( 'Tour TourID'プロパティ名を除いて、それは無関係です)。 –

答えて

0

あなたは、エンティティのIDS(および1を欠いていますプロパティの名前で)間違っている:

public int CityId { get; set;} 
public virtual City City { get; set; } 
public int TourId { get; set; } 
public virtual Tour Tour { get; set; } 

Entity Frameworkのは、今の関係を検出する必要があります何のことをいっているの図

+0

答えに感謝します。私はIDを持っている彼らは単にCityidの代わりに単にIDと呼ばれているツアーIDは文字列ですこれは問題になる可能性がありますか?私は姓を固定しましたが、それだけでは助けになりません:) – Geoman

+0

ああ、申し訳ありませんが、そこに '文字列'が見えませんでした。この[スレッド](http://stackoverflow.com/questions/32983524/how-to-use-string-property-as-primary-key-inentity-framework)では、答えによれば、あなたは ' 'string'主キーの場合は[DatabaseGenerated(DatabaseGeneratedOption.None)]'です。これが役に立ったら教えてください –

+0

残念ながら、それは役に立たなかったのですが、とにかく有益な情報に感謝しています – Geoman

関連する問題