EF中执行sql语句,以及事务
EF to sql
string sql = "select T_Task.BSID,T_Task.CloseDate,T_Task.CompleteDate,T_Task.CloseUser,T_Task.TaskID,T_BaseStation.Name from T_Task " +
"inner join T_BaseStation on T_Task.BSID=T_BaseStation.BSID"+
" where " + sqltaskid;
ObjectResult<Sys> q = db.ExecuteStoreQuery<Sys>(sql);
List<Sys> qList = q.ToList(); EF中执行sql语句,以及事务
db.Connection.Open();
var trans = db.Connection.BeginTransaction();
JsonResult json = new JsonResult();
json.Data = true;
try
{
t_device.IsAssets = ;
db.T_Device.AddObject(t_device);
db.SaveChanges(); var q = db.T_DeviceType.Single(p => p.DeviceTypeID == t_device.DeviceTypeID);
if (!string.IsNullOrEmpty(q.InfoTableName))
{
//根据不同的类型新建一个设备详细信息
string sql = "Insert into T_" + q.InfoTableName + "(DeviceID,BSID) values(" + t_device.DeviceID + "," + t_device.BSID + ")"; if (db.ExecuteStoreCommand(sql) != )
{
throw new Exception("创建详细信息失败,请检查该设备类型的表名是否正确");
}
}
trans.Commit(); }
catch (Exception ee)
{
trans.Rollback();
json.Data = ee.Message;
} return json; //基站过滤,调用存储过程
public JsonResult AutoSrc(string q)
{
int userid = Utils.GetCurrentLoginUserID(this.Session);
//var code = db.T_DepartmentInfo.Single(t => t.DepartmentID == (db.T_User.FirstOrDefault(p => p.UserID == userid).DepartmentID)).Code;
// var r = from e in db.T_BaseStation
// join d in db.T_DepartmentInfo on e.DepartmentID equals d.DepartmentID
// where d.Code != null && d.Code.Substring(0, code.Length).Contains(code)&&(e.Name.Contains(q)||e.PinYin.Contains(q))
// select new
// {
// BSID = e.BSID,
// Name = e.Name,
// PinYin = e.PinYin,
// parentBSID = e.parentBSID
// }; return proc(userid, q);
}
public JsonResult proc(int code, string name)
{
string cmdText = "P_inspectBaseList";
SqlParameter[] paras = new SqlParameter[] {
new SqlParameter("@userId",code),
new SqlParameter("@searchName",name)
};
DataTable dt = new DataTable();
dt = ExecuteQuery(cmdText, paras, CommandType.StoredProcedure); return Json(dt, JsonRequestBehavior.AllowGet);
}
public DataTable ExecuteQuery(string cmdText, SqlParameter[] paras, CommandType ct)
{
DataTable dt = new DataTable();
SqlCommand cmd = new SqlCommand();
SqlConnection conn = new SqlConnection(@"Data Source=ip\SQL2008,1848;Initial Catalog=111;Persist Security Info=True;User ID=sa;Password=111");
conn.Open();
cmd = new SqlCommand(cmdText, conn);
cmd.CommandType = ct;
cmd.Parameters.AddRange(paras); using (SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
dt.Load(sdr);
}
return dt;
} //接受Json数据
[HttpPost]
[OutputCache(Location = OutputCacheLocation.None)]
public JsonResult DataContractJsonDeserialize(T_MapOffset[] json)
{
var sqlparam = "";
int i = ; if (json != null && json.Length > )
{ foreach (var mapOffset in json)
{
if (i == )
sqlparam += "( lat=" + mapOffset.lat + " and lng=" + mapOffset.lng + ") ";
else
{
sqlparam += "or ( lat=" + mapOffset.lat + " and lng=" + mapOffset.lng + ") ";
}
i++;
}
JsonResult result = new JsonResult();
try
{
SqlConnection conn = new SqlConnection(@"Data Source=ip\SQL2008,1848;Initial Catalog=111;Persist Security Info=True;User ID=sa;Password=111");
string strSql = "select * from T_MapOffset where " + sqlparam;
List<T_MapOffset> map = new List<T_MapOffset>();
SqlCommand cmd = new SqlCommand(strSql, conn);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
T_MapOffset mapOffset = new T_MapOffset();
mapOffset.lat = Convert.ToInt32(dr["lat"]);
mapOffset.lng = Convert.ToInt32(dr["lng"]);
mapOffset.latoffset = Convert.ToInt32(dr["latoffset"]);
mapOffset.lngoffset = Convert.ToInt32(dr["lngoffset"]);
map.Add(mapOffset);
}
conn.Close();//关闭数据库连接
return Json(map);
}
catch (Exception)
{
result.Data = null;
}
return result;
}
else
{
return null;
} } //接受泛型集合
public JsonResult GetListMapOffset(List<string> lnglat)
{
JsonResult result = new JsonResult();
result.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
List<object> list = new List<object>();
try
{
foreach (var temp in lnglat)
{
string[] t = temp.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
if (t.Length != )
continue; int lng = Int32.Parse(t[]);
int lat = Int32.Parse(t[]); var q = from m in db.T_MapOffset.Where(p => p.lng == lng && p.lat == lat) select new { m.lat, m.lng, m.latoffset, m.lngoffset };
list.AddRange(q);
} return Json(list);
}
catch
{
result.Data = null;
} return result; } //接受string字符串
public JsonResult GetListForPlan(string bsids)
{
string[] list = bsids.Split(new[] {','}, StringSplitOptions.RemoveEmptyEntries);
if(list.Length<=)
{
return null;
}
int[] ids=new int[list.Length];
int i = ;
foreach (string s in list)
{
ids[i] = int.Parse(s);
i++;
} var q = from e in db.T_BaseStation
join a in ids on e.BSID equals a
select new
{
BSID = e.BSID,
Name = e.Name,
Code = e.Code,
RoomID = e.RoomID,
Building = e.Building,
Type = e.Type,
Address = e.Address,
LocationInBuilding = e.LocationInBuilding,
Longitude = e.Longitude,
Latitude = e.Latitude,
LonLatUpdateDate = e.LonLatUpdateDate,
VIP = e.VIP,
InspectorArrivalTime = e.InspectorArrivalTime,
PowerGenerationArrivalTime = e.PowerGenerationArrivalTime,
LastInspectTime = e.LastInspectTime,
BestInspectCircle = e.BestInspectCircle,
AddUser = e.AddUser,
AddTime = e.AddTime,
MonitoringInstalled = e.MonitoringInstalled,
ResponsibleUser = e.ResponsibleUser,
DepartmentID = e.DepartmentID,
Network = e.Network
}; return Json(q, JsonRequestBehavior.AllowGet);
} select ManufacturersName,COUNT(*) from T_DeviceType group by ManufacturersName,model,TypeName having COUNT(*) >
Fiddler4BetaSetup.exe
EF中执行sql语句,以及事务的更多相关文章
- 在EF中执行SQL语句(转载)
在EF中执行SQL语句 你可能要问,我用EF不就为了避免写SQL吗?如果要写SQL我不如直接用ADO.NET得了.话虽然这么说没错,可有些时候使用EF操作数据还是有一些不方便,例如让你根据条件删除 ...
- easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)
easyui datagrid 禁止选中行 没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...
- 在EF中执行SQL语句
你可能要问,我用EF不就为了避免写SQL吗?如果要写SQL我不如直接用ADO.NET得了.话虽然这么说没错,可有些时候使用EF操作数据还是有一些不方便,例如让你根据条件删除一组记录,如果按照正常的流程 ...
- EF中执行Sql语句
Entity Framework是微软出品的高级ORM框架,大多数.NET开发者对这个ORM框架应该不会陌生.本文主要罗列在.NET(ASP.NET/WINFORM)应用程序开发中使用Entity F ...
- Asp.Net MVC EF之一:使用Database类在EF框架中执行Sql语句
引言 从EF6开始,增加了DateBase类,他通过从 DbContext 对象获取此类的实例.可用于管理支持数据库上下文或连接的实际数据库.这包括创建.删除和检查数据库的存在. 在6以前,我们使用E ...
- [转]在EntityFramework6中执行SQL语句
本文转自:http://www.cnblogs.com/wujingtao/p/5412329.html 在上一节中我介绍了如何使用EF6对数据库实现CRDU以及事务,我们没有写一句SQL就完成了所有 ...
- 在EntityFramework6中执行SQL语句
在EntityFramework6中执行SQL语句 在上一节中我介绍了如何使用EF6对数据库实现CRDU以及事务,我们没有写一句SQL就完成了所有操作.这一节我来介绍一下如何使用在EF6中执行SQL语 ...
- 在EntityFramework6中执行SQL语句【转】
在上一节中我介绍了如何使用EF6对数据库实现CRDU以及事务,我们没有写一句SQL就完成了所有操作.这一节我来介绍一下如何使用在EF6中执行SQL语句. 你可能要问,我用EF不就为了避免写SQL吗?如 ...
- EF中使用SQL语句或存储过程
EF中使用SQL语句或存储过程 1.无参数查询var model = db.Database.SqlQuery<UserInfo>("select* from UserInfoe ...
随机推荐
- oracle---jdbc--laobai
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...
- Win10---------专区
待完善中---------------------------------- -----------------------------------------The End------------- ...
- .Net 中的反射(反射特性) - Part.3
反射特性(Attribute) 可能很多人还不了解特性,所以我们先了解一下什么是特性.想想看如果有一个消息系统,它存在这样一个方法,用来将一则短消息发送给某人: // title: 标题:author ...
- ArcGIS Server开发教程系列(8)ArcGIS API for Javascript-控件(小部件)
1. 鹰眼 OverviewMap小部件用于在其关联的主地图内较清楚的当前鸟瞰图的范围.当主地图范围变化时,鹰眼图会自动在其空间内更新范围以保持和地图的当前范围保持一致,当鹰眼图空间的地图范围 ...
- ASCII码表
ASCII码表 ASCII码大致可以分作三部分組成. 第一部分是:ASCII码非打印控制字符: 第二部分是:ASCII码打印字符: 第三部分是:扩展ASCII码打印字符. 第一部分:ASCII非打印控 ...
- JSP分页显示
首先要定义四个变量: int pageSize: //每页显示多少条记录 int pageNow: //希望显示第几页 int pageCount: //一共有多少页 int rowCount: // ...
- MySQL SQL Mode及相关问题
MySQL可以运行于不同的SQLMode下,Mode定义了MySQL应支持的SQL语法.数据校验等. 一.Mode会影响到日期类型.字符串类型等的插入操作.其中多种模式影响了对某些特殊字符如何理解的问 ...
- iOS抓包利器Charles
iOS抓包利器Charles http://wonderffee.github.io/blog/2013/07/13/best-packet-capture-tool-charles-in-ios/ ...
- Hadoop家族的各个成员
官方定义:hadoop是一个开发和运行处理大规模数据的软件平台.核心词语是平台,也就是说我们有大量的数据,又有好几个电脑,我们知道应该把处理数据的任务分解到各个电脑上,但是不知道怎样分配任务,怎样回收 ...
- python之路九
paramiko paramiko模块是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接 ssh执行命令: import paramikossh = pa ...