0

ビューが WCF サービスから部分ビューに読み込まれるという問題があります。すべてが正常に機能し、モデルには必要なデータが含まれていますが、どういうわけかこのエラーが発生し続けます。ProduktDto の値を明確に確認できるため、null ではありませんが、null であると表示されます。

エラーが connectionString にある可能性があると聞いたので、ここに含めます。

 <add name="SpelDatabasContainer" connectionString="metadata=res://*/SpelDatabas.csdl|res://*/SpelDatabas.ssdl|res://*/SpelDatabas.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.;initial catalog=SpelAffarenDatabas;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />

深刻なグーグル検索の後、Havent はこれに対する答えを見つけました。ビューのコードは次のとおりです。

@model List<SpelAffarWCF.ProduktDto>
<table class="table table-responsive">
<tr>
  <th>Id</th>
  <th>Namn</th>
  <th>Beskrivning</th>
  <th>Utgivningsår</th>
  <th>MP</th>
  <th>SP</th>
  <th>Pris</th>
  <th>Utgivare</th>
  <th>Konsoler</th>
  <th>Genres</th>
  <th>Aktiv order antal</th>
</tr>
@foreach (var spel in Model)
{
  <tr>
     <td title="Spelets Id">@spel.Id</td>
     <td title="Spelets jävla namn">@spel.Namn</td>
     <td title="@spel.Beskrivning">För musen över mig..</td>
     <td title="När det släpptes">@spel.Utgivningsår</td>
     <td title="Multipläjer">@Html.CheckBox("checkboxMP", spel.Multiplayer)</td>
     <td title="Singlpläjer">@Html.CheckBox("checkboxSP", spel.Singleplayer)</td>
     <td title="Spelet kostar faktiskt såhär mycket">@spel.Pris</td>
     <td title="Id: @spel.Utgivare.Id, Spel: @spel.Utgivare.Produkter.Count()">@Html.ActionLink(spel.Utgivare.Namn, "EditPublisher", new { id = spel.Utgivare.Id })</td>
     @if (spel.Konsoler.Count() > 0)
     {
        <td>
           @foreach (var konsol in spel.Konsoler)
           {
              <p class="cellEntity">@konsol.Namn</p>
           }
        </td>
     }
     else
     {
        <td>Ingen.</td>
     }
     @if (spel.Genres.Count() > 0)
     {
        <td>
           @foreach (var genres in spel.Genres)
           {
              <p class="cellEntity">@genres.Namn</p>
           }
        </td>
     }
     else
     {
        <td>Ingen genre.</td>
     }
     @if (spel.SpelPerOrders.Count() > 0)
     {
        <td>
           @foreach (var spelOrder in spel.SpelPerOrders)
           {
              <p class="cellEntity">Id: @spelOrder.OrderId, @spelOrder.Antal st</p>
           }
        </td>
     }
     else
     {
        <td>Finns inte i någon order.</td>
     }
     <td>
        <input type="button" value="Lägg till i kundvagn" onclick="AddToCart(@spel.Id)" />
     </td>
    </tr>
  }
  </table>
4

1 に答える 1

1

エラーは、それがspel.Utgivare.Produkter.Count()またはspel.Konsoler.Count()呼び出しであることを示しています。LinqCount拡張メソッドのパラメーターの名前はsource.

于 2014-12-03T15:18:45.880 に答える