【发布时间】:2021-06-04 19:57:29
【问题描述】:
首先感谢这个社区提供的帮助 我有一个问题,我的客户想一次性更新数据库中的记录。 所以解决方案是他在Excel中用“,”分隔他的对象,然后复制/粘贴到一个文本框,这个东西 查询是否适用于单个记录,但对于许多它不起作用。
代码如下 对于模型
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.Spatial;
命名空间激活.Models { 公共部分类 BDD { [必需的] [字符串长度(50)] 公共字符串代码 { 获取;放; }
[Required]
[StringLength(50)]
public string NOM { get; set; }
[Required]
[StringLength(50)]
public long TYPE{ get; set; }
[Key]
public Long NBR { get; set; }
public bool STATUS { get; set; }
[Required]
public string OBSERVATION { get; set; }
[Column(TypeName = "date")]
public DateTime? DATE_MAJ { get; set; }
}
}
控制器:
public ActionResult Index(string search)
{
var query = _context.BDD.ToList();
if (search == null)
query = _context.Database.SqlQuery<BDD>("select * from [BDD] where CONVERT (varchar,[NBR])IN(@p0)", search).ToList();
else
{
string x = addComa(search);
query = _context.BDD.SqlQuery("select * from [BDD] where CONVERT (varchar,[NBR])IN (@search)", new SqlParameter("@search", x)).ToList();
}
return View(query);
}
和视图
@model IEnumerable<SimActivation.Models.BDD_ARPT>
@{
ViewBag.Title = "Test";
}
<h2>Search</h2>
@using (Html.BeginForm("Index", "BDD"))
{
<b>@Html.TextBox("search")
<input type = "submit" name = "submit"value = "Search" /></b>
}
... table code
what i want is something like that were the number's are multiple records in the Database [enter image description here][1]
[1]: https://i.stack.imgur.com/zL4hA.png
thanks again for the help
【问题讨论】:
-
如果
query = _context.Database.SqlQuery<BDD>("select * from [BDD] where CONVERT (varchar,[NBR])IN(@p0)", search).ToList();按预期工作,那么您也可以将其用于其他情况。我建议将查询保存在字符串变量中,然后放置一个断点,看看它的值是什么。它将帮助您检查您的查询是对还是错 -
问题是查询正常但点击搜索按钮时不显示任何记录
标签: c# asp.net-mvc entity-framework search