2

私は現在、ASP.NetMVC3プロジェクトに取り組んでいます。作成したクラスに基づいてSQLデータベースがテーブルを作成するように設定しました。たとえば、変数がnullになるように設定する方法があるかどうかを知る必要があります。

   public class Cart
   {
       [Key]
       public int RecordId { get; set; }
       public string CartId { get; set; }
       public int VideoId { get; set; }
       public int CandyId { get; set; }
       public int Count { get; set; }
       public System.DateTime DateCreated { get; set; }
       public virtual Video Video { get; set; }
       public virtual Candy Candy { get; set; }
    }

VideoIdとCandyIdをnullに設定する方法はありますか?彼らが今やってくる方法は、他のテーブルへの外部キーとしてです。ありとあらゆる助けをいただければ幸いです。

4

2 に答える 2

1

シンボルを使用しVideoIdCandyIdnull許容にすることができます:?

public int? VideoId { get; set; }
public int? CandyId { get; set; }
于 2012-07-02T17:42:07.713 に答える
0

2つのオプションがあります。

1)intを使用してプロパティを宣言しますか?

 public int? VideoId { get; set; }
 public int? CandyId { get; set; }

2)通常のintを使用してプロパティを宣言しますが、null値を取得したときに何が起こるかを処理します。

 VideoId = thisMightBeNull ?? 0; //?? means, if the variable is null then use 0

最初のオプションを使用すると、VideoIdまたはCandyIdを新しい変数に割り当てたい場合はint?である必要があり、場合によっては面倒になるという欠点があります。2番目のオプションでは、その問題は発生しませんが、その瞬間に何を割り当てるかを処理する必要があることを意味します(デフォルト値)。

于 2012-07-02T18:04:54.137 に答える