このプロジェクトを実行する際に問題があります。私の製品用のテーブルがあります。私ができるページは、「追加」ボタンを押すと、私は私の新しい製品を追加するための小さなウィンドウを持っています。これは私のコントローラです:辞書に渡されたモデルアイテムは、 'System.Collections.Generic.List`1タイプです。[WebApplication7.Models.HesapTemel]
public class HomeController : Controller
{
CountingEntities hsb = new CountingEntities();
public ActionResult ProductTable()
{
var product = hsb.HesapTemels.ToList();
List<HesapTemel> yardimci = hsb.HesapTemels.ToList();
ViewBag.Funds = yardimci;
return View(product);
}
[HttpPost]
public ActionResult ProductTable(HesapTemel p)
{
try
{
HesapTemel _he = new HesapTemel();
_he.HesapAdi = p.HesapAdi;
_he.HesapKodu = p.HesapKodu;
_he.HesaptipiID = p.HesaptipiID;
hsb.HesapTemels.Add(_he);
hsb.SaveChanges();
return RedirectToAction("HesapTable", "Home");
}
catch (Exception ex)
{
throw new Exception("an error happened" + ex.Message);
}
}
、これが私の見解です:
<div>
<a class="btn btn-success" data-toggle="modal" data-target=".bootstrapmodal">
<span class="glyphicon glyphicon-eye-open">
</span>Add
</a>
<div class="modal fade bootstrapmodal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header"></div>
<div class="modal-body">
@Html.Partial("_partial.cshtml");
</div>
<div class="modal-footer"></div>
</div>
</div>
</div>
<div>
<table style="width: 100%;">
<thead>
<tr>
<th>id</th>
<th>hesap kodu</th>
<th>hesap adı</th>
<th>hesap tipi</th>
</tr>
</thead>
<tbody>
@foreach (var item in ViewBag.Funds)
{
<tr>
<td>@item.ID</td>
<td>@item.HesapKodu</td>
<td>@item.HesapAdi</td>
<td>@item.Hesaptipi.Harf</td>
</tr>
}
</tbody>
</table>
</div>
これはm yの部分図:
@model WebApplication7.Models.HesapTemel
@using (Html.BeginForm("ProductTable", "Home", FormMethod.Post, new { @class = "form-horizontal", enctype = "multipart/form-data" }))
{
<div class="row">
<div class="form-horizontal">
<div class="form-group">
<div class="col-md-12">
<label class="col-sm-2 control-label">Hesap kodu</label>
<div class="col-sm-10">
@Html.TextBoxFor(m => m.HesapKodu, new { @class = "form-control" })
</div>
</div>
</div>
<div class="form-group">
<div class="col-md-12">
<label class="col-sm-2 control-label">Hesap adı</label>
<div class="col-sm-10">
@Html.TextAreaFor(m => m.HesapAdi, new { @class = "form-control" })
</div>
</div>
</div>
</div>
</div>
<div class="panel-footer">
<div class="row">
<div class="col-sm-9 col-sm-offset-3">
<div class="btn-toolbar pull-right">
<input type="submit" value="save" class="btn btn-primary" />
</div>
</div>
</div>
</div>
}
私はこの解決策を実行しているとき、私はこのエラーを持っている: 辞書に渡されたモデルアイテムが型である「System.Collections.Generic.List`1 [WebApplication7.Models.HesapTemel] 'が、この辞書には' WebApplication7.Models.HesapTemel 'タイプのモデルアイテムが必要です。
どのコード行がエラーを示していますか?メインビューのモデルタイプは何ですか? –
そのラインエラーを表示していません! ..モデルタイプはメインビューと同じです...プロジェクトは、私が部分ビューを削除して、同じコードをメインビューとして書く時に働いていますが、同じページに「製品を追加」したい別のリンクに行くことなく –