2011-11-08 12 views
4

にnull値を持つ返すオブジェクトは、次のように:RavenDB:ASP.NET MVCで私はレイヴンを使用しているプロパティ

[HttpGet] 
public ActionResult Index() 
{ 
    ViewBag.Title = Strings.Workflows; 
    ViewBag.AddNewText = Strings.Add_new; 

    IEnumerable<WorkflowIndexViewModel> model; 
    using (var session = DocumentStore.OpenSession()) 
    { 
     model = session.Query<Workflow>() 
      .Select(w => new WorkflowIndexViewModel { WorkflowId = w.Id, WorkflowName = w.Name }) 
      .ToArray(); 
    } 

    return View(model); 
} 

奇妙なことは、私が期待するようmodelオブジェクトは(1つの値を有することです私のデータベースにはWorkflowという文書が1つあります)、WorkflowIdWorkfloNameの両方のプロパティはnullです。どうしてこれなの?私の計画に問題はありますか?

私はSelect()ToArray()コールを移動しようとしている、そしてそれはうまく動作します:

[HttpGet] 
public ActionResult Index() 
{ 
    ViewBag.Title = Strings.Workflows; 
    ViewBag.AddNewText = Strings.Add_new; 

    IEnumerable<WorkflowIndexViewModel> model; 
    using (var session = DocumentStore.OpenSession()) 
    { 
     model = session.Query<Workflow>() 
      .ToArray() 
      .Select(w => new WorkflowIndexViewModel { WorkflowId = w.Id, WorkflowName = w.Name }); 
    } 

    return View(model); 
} 
+0

クエリを実行すると(動作していない)、生のhttp要求はどのように見えますか? – asgerhallas

答えて

1

ワークフロークラスと同じにビューモデルにあなたのプロパティの名前を変更した場合それが動作します。

model = session.Query<Workflow>() 
     .Select(w => new WorkflowIndexViewModel { Id = w.Id, Name = w.Name }) 
     .ToArray(); 

しかし、これはバグや制限のようなものの回避策に過ぎません。

+0

不安定になりました。しかし、あなたは既に知っているhttp://groups.google.com/group/ravendb/browse_thread/thread/10d682d8a12b8e76;) – asgerhallas

関連する問題