如何在我的数据库中查找项目?

时间:2017-07-13 12:01:53

标签: asp.net-mvc

所以我想创建一个人并将其添加到我的表中,如果我的表中已经没有相同的名称。我在我的控制器中有这个代码

hesaplamaEntities hsb = new hesaplamaEntities();
[HttpPost]
public ActionResult Create(MyTable p)
    {

        MyTable obj = hsb.MyTable.Find(p);

        if (obj.propname == null)
        {
            hsb.MyTable.Add(p);
            hsb.SaveChanges();

           return RedirectToAction("Create", "Home");

        }
        else
        {
            return HttpNotFound();
        }

这是我的观点:

@using (Html.BeginForm("Create", "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">Name</label>
                <div class="col-sm-10">
                    @Html.TextBoxFor(m => m.propname, new { @class = "form-control" })
                </div>
            </div>
        </div>
        <div class="form-group">
            <div class="col-md-12">
                <label class="col-sm-2 control-label">kod</label>
                <div class="col-sm-10">
                    @Html.TextAreaFor(m => m.propkod, 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>

}

这是我的模特:

public partial class MyTable
{
    public int ID { get; set; }
    public string propkod { get; set; }
    public string propname { get; set; }

}

我在尝试添加人员时遇到此错误: 他指定了参数类型&#39; WebApplication7.Models.MyTable&#39;无效。仅支持标量类型,例如System.Int32,System.Decimal,System.DateTime和System.Guid。

它向我展示了这一行中的错误:HesapTemel obj = hsb.HesapTemels.Find(p);

究竟是什么问题?

0 个答案:

没有答案