想像すると2つのテーブルがあります。LINQ To SQLサブSELECTのようなクエリ
Order
+----------------+
| ID |
| Name |
+----------------+
OrderStatus
+----------------+
| ID |
| OrderId |
| StatusId |
+----------------+
オーダーは、OrderStatusHistoryと呼ばれる複数のOrderStatusを持つことができます。 私は、OrderオブジェクトのこのStatusIdは、オーダーステータス表から現在の(最後の)StatusIdであることを意味する
namespace my.project
{
public class Order
{
Int64 OrderId { get; set; }
String Name { get; set; }
Int64 StatusId { get; set; }
}
}
を次のようにdescriptedさStronglyTypeObject 注文を、持っています。
LINQでIQueryableオブジェクトリストを構築しようとしました。ここで私の、動作していない;)、LINQのコード私もマックス(P => p.XXX)で作業しようとしているが、それは働いていない
var result = from r in dbContext.ORDER
select new Order
{
OrderId = r.ID,
Name = r.Name,
StatusId = dbContext.OrderStatus
.Where(p => p.OrderId == r.ID).Last().StatusId
}
。 誰かがこの問題に関するヒントを持っていますか?
任意のヘルプははるかに高く評価されるだろう...
ゴードン
これは私がLinqと類似のORMソリューションを批判してきた理由の例です。ここでは、よく知られており、かなり確立された言語でかなり簡単な解決策を持つ問題があります。理論的な利点を得るために、あなたは本当の生産性をあきらめています。 Linqから得た利益は、データを照会する冗長な(そして特異な)方法を学ぶために必要な時間を上回っていますか?議論については、http://stackoverflow.com/questions/458802/doesnt-linq-to-sql-miss-the-point-arent-orm-mappers-subsonic-etc-sub-optiを参照してください。 –