回答編集履歴

4

追記

2018/12/04 21:50

投稿

退会済みユーザー
test CHANGED
@@ -136,7 +136,7 @@
136
136
 
137
137
 
138
138
 
139
- View を生成すると以下のようになって、
139
+ View を生成すると以下のようになって、(追伸: @model ... がキモです。スキャフォールディングで適切にパラメータを設定すれば自動生成されます)
140
140
 
141
141
 
142
142
 

3

訂正

2018/12/04 21:50

投稿

退会済みユーザー
test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
 
20
20
 
21
- そう表示したいのであれば、cn, name, mail, department のすべてが AdInfo クラスにないとダメでは? であれば、以下のように Model に AdInfor クラスを定義して:
21
+ そう表示したいのであれば、cn, name, mail, department のすべてが AdInfo クラスにないとダメでは? であれば、以下のように Model に AdInfo クラスを定義して:
22
22
 
23
23
 
24
24
 

2

追記

2018/12/04 15:32

投稿

退会済みユーザー
test CHANGED
@@ -3,3 +3,259 @@
3
3
 
4
4
 
5
5
  情報を格納するクラスを Model に定義してください。そのクラスを、例えば AdInfo とすると、取得した複数のユーザーの AD 情報を、Controller で List<AdInfo> というオブジェクトを作って格納します。それを Model として View に渡すのが基本になります。
6
+
7
+
8
+
9
+ **【追伸】**
10
+
11
+
12
+
13
+ PC からアクセスできるようになったので、コードを書いて説明しておきます。
14
+
15
+
16
+
17
+ > ↓View画面のイメージ
18
+
19
+
20
+
21
+ そう表示したいのであれば、cn, name, mail, department のすべてが AdInfo クラスにないとダメでは? であれば、以下のように Model に AdInfor クラスを定義して:
22
+
23
+
24
+
25
+ **Model**
26
+
27
+
28
+
29
+ ```
30
+
31
+ using System;
32
+
33
+ using System.Collections.Generic;
34
+
35
+ using System.Linq;
36
+
37
+ using System.Web;
38
+
39
+ using System.ComponentModel.DataAnnotations;
40
+
41
+
42
+
43
+ namespace Mvc5App.Models
44
+
45
+ {
46
+
47
+ public class AdInfo
48
+
49
+ {
50
+
51
+ public string Cn { get; set; }
52
+
53
+ public string Name { get; set; }
54
+
55
+ public string Mail { get; set; }
56
+
57
+ public string Department { get; set; }
58
+
59
+ }
60
+
61
+ }
62
+
63
+ ```
64
+
65
+
66
+
67
+ **Controller / Action Method**
68
+
69
+
70
+
71
+ 上記をベースに Controller / Action Method を作って(注: List<AdInfo> model は実際は AD 情報から取得するとしてサンプルでは以下のように簡略化)、
72
+
73
+
74
+
75
+ ```
76
+
77
+ using System;
78
+
79
+ using System.Collections.Generic;
80
+
81
+ using System.Linq;
82
+
83
+ using System.Web;
84
+
85
+ using System.Web.Mvc;
86
+
87
+ using System.ComponentModel.DataAnnotations;
88
+
89
+ using Mvc5App.Models;
90
+
91
+
92
+
93
+ namespace Mvc5App.Controllers
94
+
95
+ {
96
+
97
+ public class HomeController : Controller
98
+
99
+ {
100
+
101
+ public ActionResult AdInfo()
102
+
103
+ {
104
+
105
+ List<AdInfo> model = new List<AdInfo>
106
+
107
+ {
108
+
109
+ new AdInfo { Cn = "ABC121", Name = "suzuki", Mail = "suzuki@jp", Department = "営業" },
110
+
111
+ new AdInfo { Cn = "ABC122", Name = "sato", Mail = "sato@jp", Department = "総務" },
112
+
113
+ new AdInfo { Cn = "ABC123", Name = "tanaka", Mail = "tanaka@jp", Department = "経理" }
114
+
115
+ };
116
+
117
+
118
+
119
+ return View(model);
120
+
121
+ }
122
+
123
+ }
124
+
125
+ }
126
+
127
+ ```
128
+
129
+
130
+
131
+ スキャフォールディング機能を利用して、
132
+
133
+
134
+
135
+ ![イメージ説明](7372d8d9d7b188d5b8765d071751c4d8.jpeg)
136
+
137
+
138
+
139
+ View を生成すると以下のようになって、
140
+
141
+
142
+
143
+ **View**
144
+
145
+
146
+
147
+ ```
148
+
149
+ @model IEnumerable<Mvc5App.Models.AdInfo>
150
+
151
+
152
+
153
+ @{
154
+
155
+ ViewBag.Title = "AdInfo";
156
+
157
+ Layout = "~/Views/Shared/_Layout.cshtml";
158
+
159
+ }
160
+
161
+
162
+
163
+ <h2>AdInfo</h2>
164
+
165
+
166
+
167
+ <p>
168
+
169
+ @Html.ActionLink("Create New", "Create")
170
+
171
+ </p>
172
+
173
+ <table class="table">
174
+
175
+ <tr>
176
+
177
+ <th>
178
+
179
+ @Html.DisplayNameFor(model => model.Cn)
180
+
181
+ </th>
182
+
183
+ <th>
184
+
185
+ @Html.DisplayNameFor(model => model.Name)
186
+
187
+ </th>
188
+
189
+ <th>
190
+
191
+ @Html.DisplayNameFor(model => model.Mail)
192
+
193
+ </th>
194
+
195
+ <th>
196
+
197
+ @Html.DisplayNameFor(model => model.Department)
198
+
199
+ </th>
200
+
201
+ <th></th>
202
+
203
+ </tr>
204
+
205
+
206
+
207
+ @foreach (var item in Model) {
208
+
209
+ <tr>
210
+
211
+ <td>
212
+
213
+ @Html.DisplayFor(modelItem => item.Cn)
214
+
215
+ </td>
216
+
217
+ <td>
218
+
219
+ @Html.DisplayFor(modelItem => item.Name)
220
+
221
+ </td>
222
+
223
+ <td>
224
+
225
+ @Html.DisplayFor(modelItem => item.Mail)
226
+
227
+ </td>
228
+
229
+ <td>
230
+
231
+ @Html.DisplayFor(modelItem => item.Department)
232
+
233
+ </td>
234
+
235
+ <td>
236
+
237
+ @Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) |
238
+
239
+ @Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ }) |
240
+
241
+ @Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })
242
+
243
+ </td>
244
+
245
+ </tr>
246
+
247
+ }
248
+
249
+ ```
250
+
251
+
252
+
253
+ それを実行すると以下のようになります。これで分かりますか?
254
+
255
+
256
+
257
+ ![イメージ説明](502d1741e5bee19f0a12b220bba1df4a.jpeg)
258
+
259
+
260
+
261
+ 分からないということなら本を買って読んで体系的に勉強しないと、話が通じないので、ここのような掲示板でのやり取りで解決するのは難しいと思います。

1

訂正

2018/12/04 12:55

投稿

退会済みユーザー
test CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
 
4
4
 
5
- 情報を格納するクラスを Model にていぎしてください。そのクラスを、例えば AdInfo とすると、取得した複数のユーザーの AD 情報を、Controller で List<AdInfo> というオブジェクトを作って格納します。それを Model として View に渡すのが基本になります。
5
+ 情報を格納するクラスを Model に定義してください。そのクラスを、例えば AdInfo とすると、取得した複数のユーザーの AD 情報を、Controller で List<AdInfo> というオブジェクトを作って格納します。それを Model として View に渡すのが基本になります。