Life Worker

自分の興味の惹かれたものや使ってよかったものを紹介していきたい。自分の生活に溶け込んでるちょっとしたものや生活を彩ってくれそうなものを紹介しています。

【ASP MVC】LINQ でSQLのビューデータが正しく取得できないこと

ASP.NET MVCで作業をしていたときにハマったことをメモで残しておきます。

LINQでEntityFrameWorkで作成した、ビューモデルから正しく値が取得できないことに困ったので置書き

複数項目が同じである場合に、どうも他項目が正しく取得されないという問題が発生しました。

射影が正しくできていないのは分かっているので、まぁ、データがユニークでないということだと思うので、調べていたら、いい方法が見つかりました。

ただ、今回の方法は余計なリソースを使うため、他に対処法があると思います。

ROW NUMBER()を利用して、各レコードにユニークな数字を割り振って上げればよいということですね。

私はビューの定義にこの項目を追加して、Modelを更新してあげたらうまく動きました。 一応、この項目にはKeyとColumn(Order=0)を付与しておきました。

これで各レコードが一意になるため正しいレコードが取得できるようになりました。

他の方法がありましたら教えていただけると幸いです。