0

LINQ to SQLオブジェクトのリストを作成しようとしています。これをデータコンテキストに追加し、後で挿入します。SubmitChanges()を呼び出すと、WeatherForecastオブジェクトの郵便番号外部キーがnullであるというエラーが表示されます。

List.Add()が呼び出されても、依存オブジェクトのディープコピーは実行されないようです。とにかくそれをディープコピーにする方法はありますか?

これは私がやろうとしていることの例です。

function List<WeatherForecast> CreateForecast(Postcode postcode) 
{ 
   var forecasts = List<WeatherForecast>();

   var wf = new WeatherForecast() 
   { 
      ForecastDate = DateTime.Today
      , CurrentTemperature = (decimal)today.Attribute(XName.Get("temperature"))
   };
   wf.Postcode = postcode;

   forecasts.Add(wf); 

   ...
   Keep adding forecast objects into the list
   ...

   return forecasts;
}
4

1 に答える 1

0

List.Addはコピーをまったく作成しません。WeatherForecastが参照型であると仮定すると、作成したWeatherForecastへの参照を保存するだけです。

問題は、データベースにまだ追加されていない郵便番号オブジェクトを使用していることである可能性があります。

于 2009-05-22T00:10:08.887 に答える