有人能给一些自定义搜索的想法吗?我正在寻找一种使用ASP. NET MVC实现此逻辑的方法。
我想要的是要么搜索用户谁是在纽约或性别是男性-或也搜索用户谁是在纽约和性别是男性使用AND OR逻辑与使用2个单选按钮一个'AND'另一个'OR'。查看我的客户端视图截图:
下面是我的代码示例:
DemoSearchController
:
public ActionResult Index(string loactionsearch,string txtGenderSkill)
{
string mainconn = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
SqlConnection sqlconn = new SqlConnection(mainconn);
string sqlquery = "select * from [dbo].[LocationInfo] where LocationName like '%" + loactionsearch + "%' AND Gender like '%" + txtGenderSkill + "%'";
SqlCommand sqlcomm = new SqlCommand(sqlquery, sqlconn);
sqlconn.Open();
SqlDataAdapter sda = new SqlDataAdapter(sqlcomm);
DataSet ds = new DataSet();
sda.Fill(ds);
List<LocationInfo> location = new List<LocationInfo>();
foreach (DataRow dr in ds.Tables[0].Rows)
{
location.Add(new LocationInfo
{
ID = Convert.ToInt64(dr["ID"]),
LocationName = Convert.ToString(dr["LocationName"]),
Gender = Convert.ToString(dr["Gender"])
});
}
sqlconn.Close();
ModelState.Clear();
return View(location);
}
索引。cshtml
:
@model IEnumerable<CM_CRUD_BootstrapPopUp.Models.LocationInfo>
@using (Html.BeginForm("Index", "DemoSearch", FormMethod.Get))
{
<div class="row">
<div class="col-md-6">
<p>
<!--TextBox-->
<input type="text" id="txtNewMultSkill" name="loactionsearch" placeholder="Enter Location" class="form-control placeholder-no-fix">
<!--Radio Button-->
<input type="radio" id="html" name="fav_language" value="AND">
<label for="html">AND</label><br>
<input type="radio" id="css" name="fav_language" value="OR">
<label for="css">OR</label><br>
<!--TextBox-->
<input type="text" id="txtGenderSkill" name="gendersearch" placeholder="Enter Gender" class="form-control placeholder-no-fix">
<br />
<!--SearchButton-->
<input type="submit" value="Search" name="submit" />
</p>
<div class="col-md-6" id="div_Keyskills">
<div class="" id="txtKeyskill">
</div>
</div>
<input type="hidden" id="hdnSkill" />
</div>
</div>
// ....
// other table view code here
}
在方法中再添加一个参数,如
public ActionResult Index(string loactionsearch, string txtGenderSkill, string concatinator)
{
string mainconn = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
SqlConnection sqlconn = new SqlConnection(mainconn);
string sqlquery = "select * from [dbo].[LocationInfo] where LocationName like '%" + loactionsearch + "%' ";
sqlquery += concatinator;
sqlquery += " Gender like '%" + txtGenderSkill + "%'";
SqlCommand sqlcomm = new SqlCommand(sqlquery, sqlconn);
sqlconn.Open();
在此新参数中传递和/或
这既不是处理SQL查询的最佳方法,也不是处理敏感数据的方法。请至少使用参数化查询
我对弹性搜索完全陌生。我在试着从弹性搜索中取记录。 我查了文件,但找不到任何解决办法。如果你在这里给我一些提示或一些网站,我可以解决我的问题,我将非常感谢。
问题内容: 我想知道人们对通过LINQ-to-SQL支持实体框架的决定有何想法?我有一个我最初使用LINQ-to- SQL开发的应用程序。我发现它是我们应用的理想解决方案。 在尝试移植到Entity Framework时,我感到很惊讶。恕我直言,甚至还没有准备好黄金时间。没有延迟加载,没有POCO,对继承的可怕依赖。我发现它在我的情况下基本上不可用,而是决定坚持使用LINQ- to-SQL,直到以
问题内容: 我有两个表: 通常,我会创建一个映射表’ ‘来将这些表链接成多对多关系。 这是最好的方法吗?我应该将s的列表存储在xml列中,而不是存储在“事件”表中吗? 我使用带有Linq的.NET 3.5 / 4作为DAL(尽管我认为这可能与所提出的设计问题无关)。 有兴趣看看人们的意见是什么。 谢谢。戴夫 问题答案: 映射表绝对是执行此操作的最佳方法-实体框架会将映射表转换为两侧的实体集合,并且
问题内容: 我有这样的现有功能 该表有四列来存储整数值,我正在使用上述功能分别读取它们。 现在,我将其转换为Entity Framework。 但是上面的函数返回一个错误 输入的字符串格式不正确 因为它返回列名本身。 我不知道如何解决这个问题,因为我是EF的新手。 任何帮助,将不胜感激 谢谢 问题答案: 这可能有助于解决您的问题: 现在,该方法适用于动态输入方法参数。
问题内容: 我希望将动态连接字符串传递给实体框架上下文。我有150多个相同的模式(每个帐户一个),我想这样选择连接: 从理论上讲,这很容易,因为我可以创建一个connectionString并将其作为构造函数的参数传递,例如: 仅传递连接字符串名称时,我可以成功连接,但如下所示动态生成时,则不能成功。我现在意识到这是因为web.config中的连接字符串具有属性。 但是,当我将实际的连接字符串动态
问题内容: 我有一个简单的问题,即与“ not in” SQL等效项有关的实体框架语法。本质上,我想将以下SQL语法转换为Entity Framework语法: 这是我用于查找单个记录的方法: 这是我要用于此的伪方法: 谁能给我指点一下条款区域的内容吗?我阅读了一些有关此的论坛,并提到了使用或的情况,但是没有一个例子非常合适。 问题答案: 快去… 这些将大致变成以下数据库查询: 或者 分别。