//登录到数据库 public JsonResult LoginDB(string userAccount, string userPwd, string localIP) { try { string strConnction = string.Concat(new string[] { "SERVER=", localIP, ";DATABASE=MASTER;UID=", userAccount, ";PWD=", userPwd }); string sqlStr = "SELECT NAME FROM SYSDATABASES ORDER BY NAME"; string message = (string)null; ArrayList dataByConAndSql = dbHelper.GetDataByConAndSql(strConnction, sqlStr, out message); if (dataByConAndSql.Count <= 0) { return(Json(new { message = "Fail", content = "没有对应的数据库 ! " })); } else { //暂时存入缓存 CacheGeneral.SetCache("key_userAccount", userAccount); CacheGeneral.SetCache("key_userPwd", userPwd); CacheGeneral.SetCache("key_localIP", localIP); return(Json(new { message = "Success", content = JsonConvert.SerializeObject(dataByConAndSql) })); } } catch (Exception ex) { //报错记录错误 Log4net.log4netCreate(typeof(GeneratedFileController), log4netPath) .Error("LoginDB(string userAccount, string userPwd, string localIP) ----> " + ex.Message); return(Json(new { message = "Fail", content = "登录失败 ! " })); } }
/// <summary> /// 写入 Txt 文件 /// </summary> /// <param name="path">写入文件路径,已写入缓存</param> /// <param name="content">内容</param> /// <returns>bool 是否成功</returns> private bool WriterTxt(string content, string path = "") { path = CacheGeneral.GetCache("TemplatePath").ToString(); if (string.IsNullOrEmpty(path)) { return(false); } StreamWriter stream = null; try { stream = new StreamWriter(path, false, Encoding.UTF8); stream.Write(content); return(true); } catch (Exception ex) { Log4net.log4netCreate(typeof(GeneratedFileController), log4netPath).Error(" WriterTxt(string path, string content) ----> " + ex.Message); return(false); } finally { stream.Close(); stream.Dispose(); } }
/// <summary> /// 查询相对于的表的列名 /// </summary> /// <param name="loacalDataBase">数据库</param> /// <param name="loacaDataTable">表名</param> /// <returns>返回所有的列名</returns> private ArrayList GetCloumnByTable(string loacalDataBase, string loacaDataTable) { try { string strConnction = string.Concat(new string[] { "SERVER=", CacheGeneral.GetCache("key_localIP").ToString(), ";DATABASE=", loacalDataBase, ";UID=", CacheGeneral.GetCache("key_userAccount").ToString(), ";PWD=", CacheGeneral.GetCache("key_userPwd").ToString(), }); string strSql = string.Concat(new string[] { " SELECT COLUMN_NAME,DATA_TYPE,T.VALUE,T.IS_IDENTITY", " FROM ", loacalDataBase, ".INFORMATION_SCHEMA.COLUMNS ", " INNER JOIN (SELECT B.NAME,C.VALUE,B.IS_IDENTITY FROM SYS.TABLES A ", " INNER JOIN SYS.COLUMNS B ON A.OBJECT_ID = B.OBJECT_ID ", " INNER JOIN SYS.EXTENDED_PROPERTIES C ON C.MAJOR_ID = B.OBJECT_ID AND C.MINOR_ID = B.COLUMN_ID) T ON COLUMN_NAME=T.NAME ", " WHERE TABLE_NAME = '", loacaDataTable, "'" }); ArrayList fieldByConAndSql = dbHelper.GetFieldByConAndSql(strConnction, strSql); return(fieldByConAndSql); } catch (Exception ex) { Log4net.log4netCreate(typeof(GeneratedFileController), log4netPath) .Error("GetCloumnByTable(string loacalDataBase, string loacaDataTable) ---- > " + ex.Message); throw; } }
//读取模板 public JsonResult ReadTemplate(int marking) { string TemplateType = string.Empty; switch (marking) { case (int)TemplateEnum.BLL: TemplateType = "BLLTemplate.txt"; break; case (int)TemplateEnum.Model: TemplateType = "ModelTemplate.txt"; break; case (int)TemplateEnum.DAL: TemplateType = "DALTemplate.txt"; break; } string TemplatePath = Server.MapPath("~/App_Data/Template/" + TemplateType); //文件路径计入缓存 CacheGeneral.SetCache("TemplatePath", TemplatePath); //读取模板 string strTxt = ReadTxt(TemplatePath); if (strTxt.Contains("读取模板错误")) { return(Json(new { message = "Fail", content = "读取模板错误 ! " })); } else { return(Json(new { message = "Success", content = strTxt })); } }
//根据数据库联动表名 public JsonResult LoginTable(string localDB) { try { string strConnction = string.Concat(new string[] { "SERVER=", CacheGeneral.GetCache("key_localIP").ToString(), ";DATABASE=MASTER;UID=", CacheGeneral.GetCache("key_userAccount").ToString(), ";PWD=", CacheGeneral.GetCache("key_userPwd").ToString() }); string sqlStr = @"SELECT TABLE_NAME FROM " + localDB + ".INFORMATION_SCHEMA.TABLES ORDER BY TABLE_NAME"; string message = (string)null; ArrayList dataByConAndSql = dbHelper.GetDataByConAndSql(strConnction, sqlStr, out message); return(Json(new { message = "Success", content = JsonConvert.SerializeObject(dataByConAndSql) })); } catch (Exception ex) { Log4net.log4netCreate(typeof(GeneratedFileController), log4netPath) .Error("LoginTable(string localDB) ---- > " + ex.Message); return(Json(new { message = "Fail", content = "表查询错误," + ex.Message })); } }