SQLite.Net使用入门(二)【结合Asp.Net MVC】
来源:互联网 发布:江苏悠迅网络是干嘛的 编辑:程序博客网 时间:2024/06/05 04:51
成功的道理有千万条,但如果意志薄弱,一切的道理都没有用。
SQLiteHelper.cs代码:
public class SQLiteHelper { private static string connectionstring = "Data Source=" + HttpRuntime.AppDomainAppPath +System.Configuration.ConfigurationManager.ConnectionStrings["conStr2"].ConnectionString; public static string Connectionstring { get { return SQLiteHelper.connectionstring; } } public static int ExecuteQuery(string cmdText, CommandType cmdType, params SQLiteParameter[] parameters) { SQLiteCommand cmd = GetCommand(cmdText, cmdType, parameters); int result = cmd.ExecuteNonQuery(); cmd.Parameters.Clear(); cmd.Connection.Close(); return result; } public static Object ExecuteScalar(string cmdText, CommandType cmdType, params SQLiteParameter[] parameters) { SQLiteCommand cmd = GetCommand(cmdText, cmdType, parameters); object result = cmd.ExecuteScalar(); cmd.Parameters.Clear(); cmd.Connection.Close(); return result; } public static DataTable ExecuteDatatable(string cmdtxt, CommandType cmdtype, params SQLiteParameter[] parameters) { SQLiteCommand cmd = GetCommand(cmdtxt, cmdtype, parameters); SQLiteDataAdapter adap = new SQLiteDataAdapter(cmd); DataTable dt = new DataTable(); adap.Fill(dt); cmd.Parameters.Clear(); cmd.Connection.Close(); return dt; } public static DataSet ExecuteDataset(string cmdText, CommandType cmdType, params SQLiteParameter[] parameters) { SQLiteCommand command = GetCommand(cmdText, cmdType, parameters); SQLiteDataAdapter adapter = new SQLiteDataAdapter(command); DataSet dataSet = new DataSet(); adapter.Fill(dataSet); command.Parameters.Clear(); command.Connection.Close(); return dataSet; } public static SQLiteDataReader ExecuteDataReader(string cmdText, CommandType cmdType, params SQLiteParameter[] parameters) { SQLiteCommand cmd = GetCommand(cmdText, cmdType, parameters); SQLiteDataReader result = cmd.ExecuteReader(CommandBehavior.CloseConnection); cmd.Parameters.Clear(); cmd.Connection.Close(); return result; } public static DataSet Query(string SQLString) { using (SQLiteConnection connection = new SQLiteConnection(connectionstring)) { DataSet ds = new DataSet(); try { connection.Open(); SQLiteDataAdapter command = new SQLiteDataAdapter(SQLString, connection); command.Fill(ds, "ds"); } catch (System.Data.SqlClient.SqlException ex) { throw new Exception(ex.Message); } return ds; } } private static SQLiteCommand GetCommand(string cmdText, CommandType cmdType, params SQLiteParameter[] parameters) { SQLiteCommand cmd = new SQLiteCommand(); //SQLiteConnectionStringBuilder scs = new SQLiteConnectionStringBuilder(); //scs.DataSource = connectionstring; //scs.Password = ""; cmd.Connection = new SQLiteConnection(connectionstring); cmd.CommandText = cmdText; cmd.CommandType = cmdType; if (parameters != null) foreach (SQLiteParameter p in parameters) cmd.Parameters.Add(p); cmd.Connection.Open(); //cmd.Connection.ChangePassword("pwd");//给SQLite设置密码 //cmd.Connection.SetPassword("pwd");//打开带密码的SQLite return cmd; } }
SQLiteDeController.cs控制器:
public class SQLiteDeController : Controller { public ActionResult Index() { //HCLUtility.MyJsonResultMessageEntity jms = new HCLUtility.MyJsonResultMessageEntity(); //jms.Message = "成功"; //jms.IsSuccess = true; //ViewBag.Message = JsonConvert.SerializeObject(jms); #region 测试 //string strSQL = string.Format("INSERT INTO customers VALUES({0},'{1}','{2}','{3}','{4}','{5}',{6})", 8, "Joe", "上海", "潜在客户", DateTime.Now, "admin", 9); //string message = "失败"; //try //{ // int i = SQLiteHelper.ExecuteQuery(strSQL, CommandType.Text); // if (i > 0) // { // message = "成功"; // } //} //catch (Exception ex) //{ // message = ex.ToString(); //} //ViewBag.Message = message + ""; //SQLiteConnection conn = null; //string dbPath = "Data Source =" + Server.MapPath("App_Data/test.db"); //conn = new SQLiteConnection(dbPath);//创建数据库实例,指定文件位置 //conn.Open();//打开数据库,若文件不存在会自动创建 //string sql = "CREATE TABLE IF NOT EXISTS student(id integer, name varchar(20), sex varchar(2));";//建表语句 //SQLiteCommand cmdCreateTable = new SQLiteCommand(sql, conn); //cmdCreateTable.ExecuteNonQuery();//如果表不存在,创建数据表 //SQLiteCommand cmdInsert = new SQLiteCommand(conn); //cmdInsert.CommandText = "INSERT INTO student VALUES(1, '小红', '男')";//插入几条数据 //cmdInsert.ExecuteNonQuery(); //cmdInsert.CommandText = "INSERT INTO student VALUES(2, '小李', '女')"; //cmdInsert.ExecuteNonQuery(); //cmdInsert.CommandText = "INSERT INTO student VALUES(3, '小明', '男')"; //cmdInsert.ExecuteNonQuery(); //conn.Close(); #endregion DataSet ds = SQLiteHelper.ExecuteDataset("select id,name,createdate from demo order by id desc", CommandType.Text); return View(ds); } [HttpPost] [ValidateAntiForgeryToken] public ActionResult Index(FormCollection form) { string name = form["name"]; //SQLite date函数datetime('now','localtime') 当前的本地时间 string strSQL =string.Format("INSERT INTO demo VALUES({0},'{1}',{2})","null", name,"datetime('now','localtime')"); int result=SQLiteHelper.ExecuteQuery(strSQL,CommandType.Text); string message = "失败"; if (result > 0) { message = "成功"; } ViewBag.Message = message; DataSet ds = SQLiteHelper.ExecuteDataset("select id,name,createdate from demo order by createdate desc", CommandType.Text); return View(ds); } }
Index.cshtml视图:
@{ Layout = null;}<!DOCTYPE html><html><head> <meta name="viewport" content="width=device-width" /> <title></title></head><body> <div> <form method="post" action="/SQLiteDe/Index"> @Html.AntiForgeryToken() <input id="name" name="name" /><br /> <input id="createdate" name="createdate" value="@DateTime.Now" /> <br /> <input type="submit" value="提交" /> @ViewBag.Message </form> </div> <hr /> @if (Model.Tables.Count > 0 && Model != null) { for (int i = 0; i < Model.Tables[0].Rows.Count; i++) { <p>@Model.Tables[0].Rows[i]["name"].ToString()|@Model.Tables[0].Rows[i]["createdate"].ToString()</p> } }</body></html>
运行结果如图:
0 0
- SQLite.Net使用入门(二)【结合Asp.Net MVC】
- asp.net mvc AjaxBeginForm结合Partial使用
- ASP.NET MVC 入门
- ASP.NET MVC 入门
- asp.net MVC入门
- ASP.NET MVC 入门
- ASP .NET MVC入门
- asp.net MVC入门
- 二. ASP NET MVC
- ASP.NET MVC 入门11、使用AJAX
- ASP.NET MVC 入门11、使用AJAX
- ASP.NET MVC 入门 -- 11、使用AJAX
- ASP.NET MVC 入门11、使用AJAX
- ASP.NET MVC 入门11、使用AJAX
- ASP.NET MVC 入门10 使用AJAX
- ASP.NET MVC 入门11、使用AJAX
- ASP.NET MVC 入门11、使用AJAX
- asp.net mvc使用表单认证入门
- 安卓四大组件
- Android studio常见问题
- CSS实现元素水平/垂直居中的方法
- protobuf源码编译
- javascript实现继承
- SQLite.Net使用入门(二)【结合Asp.Net MVC】
- 集群上如何跑pyspark程序--Running Spark Python Applications
- SAP文件的上传
- service Android 四大组件之一
- Java面试题大全(Java基础二)
- 微信小程序把玩(三十三)Record API
- AndroidStudio 删除模块
- pagination 分页
- Android string.xml 显示特殊符