在LINQ中使用contains可针对某属性进行模糊查询,下面是一个简单的例子:
public ActionResult Query(string userName)
{
var users = from s in dbUsers
Where sUserNameContains(userName)
select s;
return View(users);
}
以上是假定userName一定有值,若保险一点,可以如下:
public ActionResult Query(string userName)
{
var users = from s in dbUsers select s;
if (!stringIsNullOrEmpty(userName))
{
users = usersWhere(u => uUserNameContains(userName));
}
return View(users);
}
@RequestMapping(value = "/login", method = RequestMethodGET)
public ModelAndView myMethod(>
列表上面 需要一个控件来接收你模糊查询的参数 如 用户名:xxx
传递到后台之后
查询表信息 使用 like '% xxx %' 执行完成后返回结果集 前端页面重新加载返回的结果集即可
数据库中有若干张表。每张表都有若干字段,每个字段都有字段名称,类型,是否为空等等。
Model是C#的类。 每一个Model表示一张数据库表的结构,用来存储从数据库中返回的数据。
比如,现在有一张表,表名为:MyTable 有2个字段 : id 数字类型 ,myname 字符型。
那么,就得为这个表新建一个Model,为了好区别,命名为 MyTableModelcs
对应数据库字段的变量2个: public decimal Id; public string MyName;
至于数据库连接, EF、oledb、oracleclient等等手段,入门必备,我就不说了。
除了EF等框架外, 用Sql语句查询出来的,大部分都是 DataTable 或者DS 返回值。
这时候就需要将返回的DataTable,转化成List<MyTableModel> 这样的类型。
(吐槽下:一个项目Entity Framework 用久了很折磨人。。。)
当然,中间很多工具或框架可以自动处理。用的多了,就知道了。
spring中提供了 一个spring-jdbc,就是对jdbc的使用简化和扩展,增加一些开发效率。如果要了解更详细,可以搜索spring-jdbc使用详情。
具体spring-jdbc使用前,要导入相应的jar包,在applicationContextxml中配置dataSource和jdbcTemplate就可以使用它了。
添删查改 *** 作:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public void add(User user){
jdbcTemplateupdate("INSERT INTO USER VALUES('"
+ usergetId() + "', '"
+ usergetName() + "', '"
+ usergetSex() + "', '"
+ usergetAge() + "')");
}
public void edit(User user){
jdbcTemplateupdate("UPDATE USER SET name = WHERE user_id = ", new Object[] {name, id});
}
public int queryCount(){
int count = jdbcTemplatequeryForInt("SELECT COUNT() FROM USER");
}
前台转时间值到后台,是个字符串,后台接收到的是时间的字符串,在后台再把这两时间字符串格式化成时间格式,再利用SQL select from tb where time between t1 and t2就OK,oracle与mysql对时间的格式化函数不一样,如果有需要在sql上将传过来的时间进行格式化再对比即可
以上就是关于mvc 3 怎么实现模糊查询功能全部的内容,包括:mvc 3 怎么实现模糊查询功能、C# mvc 如何实现页面输入值进行查询、asp.net mvc 模糊查询 怎么写等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)