動作しない子クラスの列挙リスト

djblois

ヘルプデスクソフトウェアのWebページを作成しています。上部にはチケットクラスの情報が表示され、下部にはICollectionを介してチケットクラスに添付されているticketNotesが表示されます。現在、下部をコメントアウトすると、上部(静的テーブル)は正しく機能します。ただし、ICollectionを指す下の2つのテーブルは機能していません。これが私が得ているエラーです:

ページにアクセスしたときにエラーが発生しました

これが私の見解です:

    @model HelpDesk.Model.Ticket

@{
    ViewBag.Title = "Ticket# " + Html.DisplayFor(model => model.TicketNumber);
}

<table class="table">
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.CategoryId)
        </th>
        <th>
            @Html.DisplayFor(model => model.Category.CategoryName)
        </th>
    </tr>
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.OpenUserId)
        </th>
        <th>
            @Html.DisplayFor(model => model.OpenUser.FullName)
        </th>
    </tr>
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.OpenDate)
        </th>
        <th>
            @Html.DisplayFor(model => model.OpenDate)
        </th>
    </tr>
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.TechnicianId)
        </th>
        <th>
            @Html.DisplayFor(model => model.Technician.FullName)
        </th>
    </tr>
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.TicketStatusId)
        </th>
        <th>
            @Html.DisplayFor(model => model.TicketStatus.StatusDescription)
        </th>
    </tr>
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.CloseDate)
        </th>
        <th>
            @Html.DisplayFor(model => model.CloseDate)
        </th>
    </tr>
    <tr></tr>
</table>

<table class="table">
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.TicketNotes.Note)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.TicketNotes.TicketNoteDate)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.TicketNotes.UserNote.FullName)
        </th>
        <th></th>
    </tr>

    @foreach (var item in Model.TicketNotes)
    {
        <tr>
            <td>
                @Html.DisplayFor(modelItem => item.TicketNotes.Note)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.TicketNotes.TicketNoteDate)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.TicketNotes.UserNote.FullName)
            </td>
        </tr>
    }

</table>

これが私のコントローラーコードです:

public ActionResult EditUserTicket(Guid id)
        {
            Ticket ticket = tickets.GetById(id);

            var model = db.Tickets
                    .Include(t => t.TicketNotes)
                    .Where(t => t.TicketId == id).First();

            return View(model);
        }

これが私のモデルです:

namespace HelpDesk.Model
{
    public class Ticket
    {
        public Ticket()
        {
            this.TicketNotes = new HashSet<TicketNote>();
        }
        public Guid TicketId { get; set; }

        [Display(Name = "#")]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        [Required]
        public int TicketNumber { get; set; }

        [ForeignKey("Category")]
        [Required]
        public Guid CategoryId { get; set; }

        public virtual Category Category { get; set; }

        [ForeignKey("OpenUser")]
        [Required]
        public Guid OpenUserId { get; set; }

        [Display(Name = "Ticket Owner")]
        public virtual User OpenUser { get; set; }

        [Display(Name = "Opened")]
        [DataType(DataType.Date)]
        [Required]
        public DateTime OpenDate { get; set; }

        [ForeignKey("Technician")]
        [Required]
        public Guid TechnicianId { get; set; }

        [Display(Name = "Technician")]
        public virtual User Technician { get; set; }

        [ForeignKey("TicketStatus")]
        [Required]
        public Guid TicketStatusId { get; set; }

        public virtual TicketStatus TicketStatus { get; set; }

        [Display(Name = "Closed")]
        [DataType(DataType.Date)]
        public Nullable<DateTime> CloseDate { get; set; }

        [Display(Name = "Note")]
        public virtual ICollection<TicketNote> TicketNotes { get; set; }
        //public virtual ICollection<TicketSubscription> TicketSubscriptions { get; set; }
    }
}
user3559349

あなたのforeachループで

@foreach (var item in Model.TicketNotes)

itemはすでにのインスタンスなTicketNoteので、

@Html.DisplayFor(modelItem => item.TicketNotes.Note)

TicketNote名前の付いたプロパティがないために失敗しますTicketNotes

それはただあるべきです

@Html.DisplayFor(m => item.Note)

表の見出しには、次を使用できます。

@Html.DisplayNameFor(model => model.TicketNotes[0].Note)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

リストを構成するクラスの列挙子

分類Dev

列挙型クラスの値を比較するときの奇妙な動作

分類Dev

Pythonクラス変数リストとintの一貫性のない動作

分類Dev

クラス内の辞書のPythonリストが期待どおりに動作しない

分類Dev

Pythonネストリストの予期しない動作

分類Dev

奇妙な列挙子の動作(副作用?)

分類Dev

Bash の単純なスクリプトが正常に動作しない

分類Dev

Railsアプリで動作しないjQueryスクリプト

分類Dev

C ++列挙型クラス:存在しないエントリにキャストします

分類Dev

bash スクリプトでの二重引用符の予期しない動作

分類Dev

列挙型と識別子リストの長さが一致しない場合、コンパイラエラーが発生します

分類Dev

私のクラスがエラーで動作しない理由

分類Dev

Bashのトリプルバックスラッシュ「echo-e」は奇妙な動作をしています

分類Dev

デスクトップデバイスでの3列の予期しない動作をブートストラップします

分類Dev

プラグインで動作しない子divのjqueryクリックイベント

分類Dev

Java日付コンストラクタの予期しない動作

分類Dev

Qt - 別のクラスの mainwindow クラス オブジェクトがうまく動作しない

分類Dev

内部クラスとして宣言されたときのswitchステートメントの列挙値の動作

分類Dev

予期しない動作のブートストラップ3

分類Dev

動作しないテスト条件を含むBashスクリプトのcaseステートメント

分類Dev

NodeJSスクリプトがasync / awaitで動作しない

分類Dev

同じ異なるフォーマットの文字列に対するjavascriptの新しいDate()コンストラクターのあいまいな動作

分類Dev

キャストなしの列挙型クラスからのバイト

分類Dev

IE11で動作しないクラスのAngular2

分類Dev

ブートストラップ4.2スクリプトがロード/動作しない

分類Dev

スクレイピング時のサイトの予期しない動作-リクエスト

分類Dev

nextElementSiblingが機能しない、オブジェクトまたはクラスjavascriptでの予期しない動作

分類Dev

JavaストリームのforEach ConcurrentModificationExceptionが予期しない動作

分類Dev

リストで動作しないPythonの方法

Related 関連記事

  1. 1

    リストを構成するクラスの列挙子

  2. 2

    列挙型クラスの値を比較するときの奇妙な動作

  3. 3

    Pythonクラス変数リストとintの一貫性のない動作

  4. 4

    クラス内の辞書のPythonリストが期待どおりに動作しない

  5. 5

    Pythonネストリストの予期しない動作

  6. 6

    奇妙な列挙子の動作(副作用?)

  7. 7

    Bash の単純なスクリプトが正常に動作しない

  8. 8

    Railsアプリで動作しないjQueryスクリプト

  9. 9

    C ++列挙型クラス:存在しないエントリにキャストします

  10. 10

    bash スクリプトでの二重引用符の予期しない動作

  11. 11

    列挙型と識別子リストの長さが一致しない場合、コンパイラエラーが発生します

  12. 12

    私のクラスがエラーで動作しない理由

  13. 13

    Bashのトリプルバックスラッシュ「echo-e」は奇妙な動作をしています

  14. 14

    デスクトップデバイスでの3列の予期しない動作をブートストラップします

  15. 15

    プラグインで動作しない子divのjqueryクリックイベント

  16. 16

    Java日付コンストラクタの予期しない動作

  17. 17

    Qt - 別のクラスの mainwindow クラス オブジェクトがうまく動作しない

  18. 18

    内部クラスとして宣言されたときのswitchステートメントの列挙値の動作

  19. 19

    予期しない動作のブートストラップ3

  20. 20

    動作しないテスト条件を含むBashスクリプトのcaseステートメント

  21. 21

    NodeJSスクリプトがasync / awaitで動作しない

  22. 22

    同じ異なるフォーマットの文字列に対するjavascriptの新しいDate()コンストラクターのあいまいな動作

  23. 23

    キャストなしの列挙型クラスからのバイト

  24. 24

    IE11で動作しないクラスのAngular2

  25. 25

    ブートストラップ4.2スクリプトがロード/動作しない

  26. 26

    スクレイピング時のサイトの予期しない動作-リクエスト

  27. 27

    nextElementSiblingが機能しない、オブジェクトまたはクラスjavascriptでの予期しない動作

  28. 28

    JavaストリームのforEach ConcurrentModificationExceptionが予期しない動作

  29. 29

    リストで動作しないPythonの方法

ホットタグ

アーカイブ