Berkenaan dengan jawaban untuk pertanyaan ini Meneruskan DataContext ke Aksi () , bagaimana cara mengembalikan nilai dari aksi (db)?
SimpleUsing.DoUsing(db => {
// do whatever with db
});
Seharusnya lebih seperti:
MyType myType = SimpleUsing.DoUsing<MyType>(db => {
// do whatever with db. query buit using db returns MyType.
});
Anda juga dapat memanfaatkan fakta bahwa lambda atau metode anonim dapat menutup variabel dalam cakupannya.
MyType result; SimpleUsing.DoUsing(db => { result = db.SomeQuery(); //whatever returns the MyType result }); //do something with result
sumber
Gunakan
Func<T>
daripadaAction<T>
.Action<T>
bertindak seperti metode void dengan parameter tipe T, sedangkanFunc<T>
bekerja seperti fungsi tanpa parameter dan yang mengembalikan objek tipe T.Jika Anda ingin memberikan parameter pada fungsi Anda, gunakan
Func<TParameter1, TParameter2, ..., TReturn>
.sumber