私はいくつかのコードを持っています:
using(var userlookup = new UserLookup()) { someThing = someCollection .Select(t => { var user = userLookup.UserLookup(t.UserId); 新しいラッパーを返す { UserString = string.Format("{0} {1} ({2})", user.FirstName、user.LastName、t.UserId)、 SomeOtherProperty = t.SomeFunction() 等.. }; }); }
にsomeThing
アクセスすると、ObjectDisposedException
. これは、using ブロックを削除することで解決できます。私がこれを行う場合:
UserLookup
Linq列挙型が破棄されると破棄されますか?- もしそうなら、これはどのように起こりますか?
- このコードを再構築して
UserLookup
、列挙型が破棄されたときにインスタンスを破棄する方法はありますか?
(使用ブロック内で ToList() を呼び出すことができると確信しており、それは正常に機能します。おそらくそうするでしょうが、好奇心のために)
someThing
また、これは MVC ビュー モデルのプロパティであることに言及する必要があります。