½ñÌìÒª½éÉܵľÍÊÇsql2005µÄxml×Ö¶ÎÀàÐÍÔÚ.netÖеÄÓ¦Óᣵ÷Óùý³ÌÊÇ£ºÏÈÔËÓò¢Ðл¯µÄ°ì·¨°Ñxml×Ö¶ÎÀàÐÍÖеÄÊý¾Ýת»»³ÉModel¶ÔÏ󣬶ÔModel¶ÔÏó²Ù×÷ºó£¬ÔÙÔËÓô®Ðл¯µÄ·½·¨°ÑModel¶ÔÏóת±ä³Éxml¸ñʽ£¬×îºó´æ´¢µ½Êý¾Ý¿âÖС£ ÎÒÈÏΪÈç¹û°Ñ¸´ÔÓµÄÒµÎñ¹ØÏµÊý¾Ý´æ´¢ÔÚxml×Ö¶ÎÖУ¬¿É¼ò»¯Êý¾Ý¿âµÄÉè¼Æ£¬·½±ãÒµÎñµÄ´¦Àí¡£ ÕâÀïдÁ˸öСdemo£º ¼ÙÈçÎÒÃÇÓкܶàµêÆÌÐÅÏ¢£¬Ã¿¸öµêÆÌ¶¼ÓÐÒ»¸öShopID£¬ ËùÒÔÎÒÃǾͰÑͬһµêÆÌµÄÐÅÏ¢·ÅÔÚÒÔShopIDÃüÃûµÄÎļþ¼ÐÏ£¬µ±Ò»Ì¨·þÎñÆ÷·Å²»ÏÂʱ£¬ÎÒÃǾͲ¿Êð¶ą̀£¬ÕâÑùÿ̨·þÎñÆ÷´æ´¢µÄµêÆÌÊDz»Ò»ÑùµÄ¡£ÕâЩ·þÎñÆ÷¾Í¹¹³ÉÁËÒ»¸ö·þÎñÆ÷Ⱥ¡£³öÓÚÐèÒª£¬ÎÒÃÇÒª°ÑÕâ¸öȺ¸´Öƶà¸ö£¬²¿ÊðÔÚ²»Í¬µÄµØÇø£¨×¢Ò⣬¸÷¸öȺµÄÐÅÏ¢ÊÇÏàͬµÄ£©¡£ÎªÁËÍê³ÉÕâ¸öÄ¿µÄ£¬ÎÒÃÇÏÈÉè¼ÆÁËÊý¾ÝÄ£ÐÍ MServerGroup£¨·þÎñÆ÷ȺÐÅÏ¢£©£¬MServer£¨·þÎñÆ÷ȺϵķþÎñÆ÷ÐÅÏ¢£©£¬MServerShop£¨·þÎñÆ÷¶ÔÓ¦µÄµêÆÌ£©£º /// <summary> /// ·þÎñÆ÷ȺÐÅÏ¢ /// </summary> /// <remarks> /// ÓÃÓÚ´æ·Åµã²¥Îļþ·þÎñÆ÷ȺµÄÐÅÏ¢,±ÈÈçÖ÷Õ¾µÄ,±±¾©Õ¾µÄ,ÉϺ£Õ¾µÄ;¸÷¸öÕ¾µÄÊý¾ÝÏàͬ. /// ·þÎñÆ÷ȺµÄÄ¿µÄÊÇ·ÖÉ¢Êý¾Ý¿âµÄѹÁ¦. /// ĿǰֻÓÐÖ÷Õ¾µÄ. /// </remarks> [Serializable()] public class MServerGroup : BaseModelEntity { #region private private int _ServerGroupID; private string _ServerGroupName; private MServerCollection _Servers; #endregion #region constructor /// <summary> /// ·þÎñÆ÷ȺÐÅÏ¢ /// </summary> public MServerGroup() { } /// <summary> /// ·þÎñÆ÷ȺÐÅÏ¢ /// </summary> /// <param name="_ServerGroupID">·þÎñÆ÷ȺID</param> /// <param name="_ServerGroupName">·þÎñÆ÷ȺÃû³Æ</param> public MServerGroup(int _ServerGroupID, string _ServerGroupName) { this._ServerGroupID = _ServerGroupID; this._ServerGroupName = _ServerGroupName; } #endregion #region property /// <summary> /// ·þÎñÆ÷ȺID /// </summary> public int ServerGroupID { get { return _ServerGroupID; } set { this._ServerGroupID = value; } } /// <summary> /// ·þÎñÆ÷ȺÃû³Æ /// </summary> public string ServerGroupName { get { return _ServerGroupName; } set { this._ServerGroupName = value; } } /// <summary> /// ·þÎñÆ÷ȺϵķþÎñÆ÷¼¯ºÏ /// </summary> public MServerCollection Servers { get { return _Servers; } set { this._Servers = value; } } #endregion } /// <summary> /// ·þÎñÆ÷ȺϵķþÎñÆ÷ÐÅÏ¢ /// </summary> /// <remarks> /// ÓÃÓÚ´æ·Åµã²¥ÎļþµÄ·þÎñÐÅÏ¢ /// </remarks> [Serializable()] public class MServer : BaseModelEntity { #region private private int _ServerID; private string _ServerName; private string _IP; private string _DomainName; private string _Dir; private string _Url; private int _ServerGroupID; private MServerShopCollection _ServerShops; #endregion
#region constructor /// <summary> /// ·þÎñÆ÷ÐÅÏ¢ /// </summary> public MServer() { } /// <summary> /// ·þÎñÆ÷ÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷ID</param> /// <param name="_ServerName">·þÎñÆ÷Ãû³Æ</param> /// <param name="_IP">·þÎñÆ÷IP</param> /// <param name="_DomainName">·þÎñÆ÷ÓòÃû</param> /// <param name="_Dir">Îļþ´æ·ÅĿ¼</param> /// <param name="_Url">Îļþ´æ·ÅUrl</param> /// <param name="_ServerGroupID">¶ÔÓ¦µÄ·þÎñÆ÷ȺID</param> /// <param name="_ServerShops">·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢</param> public MServer(int _ServerID, string _ServerName, string _IP, string _DomainName, string _Dir, string _Url, int _ServerGroupID, MServerShopCollection _ServerShops) { this._ServerID = _ServerID; this._ServerName = _ServerName; this._IP = _IP; this._DomainName = _DomainName; this._Dir = _Dir; this._Url = _Url; this._ServerGroupID = _ServerGroupID; this._ServerShops = _ServerShops; } /// <summary> /// ·þÎñÆ÷ÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷ID</param> /// <param name="_ServerName">·þÎñÆ÷Ãû³Æ</param> /// <param name="_IP">·þÎñÆ÷IP</param> /// <param name="_DomainName">·þÎñÆ÷ÓòÃû</param> /// <param name="_Dir">Îļþ´æ·ÅĿ¼</param> /// <param name="_Url">Îļþ´æ·ÅUrl</param> /// <param name="_ServerGroupID">¶ÔÓ¦µÄ·þÎñÆ÷ȺID</param> /// <param name="_xmlStrServerShops">·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢µÄxml×Ö·û´®</param> public MServer(int _ServerID, string _ServerName, string _IP, string _DomainName, string _Dir, string _Url, int _ServerGroupID, string _xmlStrServerShops) { this._ServerID = _ServerID; this._ServerName = _ServerName; this._IP = _IP; this._DomainName = _DomainName; this._Dir = _Dir; this._Url = _Url; this._ServerGroupID = _ServerGroupID; this._ServerShops = Common.Utilities.SerializationHelper<MServerShopCollection>.FromXML(_xmlStrServerShops); } #endregion #region property /// <summary> /// ·þÎñÆ÷ID /// </summary> public int ServerID { get { return _ServerID; } set { this._ServerID = value; } } /// <summary> /// ·þÎñÆ÷Ãû³Æ /// </summary> public string ServerName { get { return _ServerName; } set { this._ServerName = value; } } /// <summary> /// ·þÎñÆ÷IP /// </summary> public string IP { get { return _IP; } set { this._IP = value; } } /// <summary> /// ·þÎñÆ÷ÓòÃû /// </summary> public string DomainName { get { return _DomainName; } set { this._DomainName = value; } } /// <summary> /// Îļþ´æ·ÅĿ¼ /// </summary> public string Dir { get { return Dir; } set { this.Dir = value; } } /// <summary> /// Îļþ´æ·ÅUrl /// </summary> public string Url { get { return _Url; } set { this._Url = value; } } /// <summary> /// ¶ÔÓ¦µÄ·þÎñÆ÷ȺID /// </summary> public int ServerGroupID { get { return _ServerGroupID; } set { this._ServerGroupID = value; } }
/// <summary> /// ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ /// </summary> public MServerShopCollection ServerShops { get { return _ServerShops; } set { this._ServerShops = value; } } #endregion }
/// <summary> /// ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌ /// </summary> /// <remarks> /// ÓÃÓÚ´æ·ÅºÍ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌ /// </remarks> [Serializable()] [XmlRoot(ElementName = "Shop", Namespace = "http://www.linkedu.com.cn/MServerShop.xsd")] public class MServerShop : BaseModelEntity { #region private private int _ShopID; private string _ShopName; #endregion #region constructor /// <summary> /// ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ /// </summary> public MServerShop() { } /// <summary> /// ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ /// </summary> /// <param name="_ShopID">µêÆÌID</param> /// <param name="_ShopName">µêÆÌÃû³Æ</param> public MServerShop(int _ShopID, string _ShopName) { this._ShopID = _ShopID; this._ShopName = _ShopName; } #endregion #region property /// <summary> /// µêÆÌID /// </summary> [XmlAttribute] public int ShopID { get { return _ShopID; } set { this._ShopID = value; } } /// <summary> /// µêÆÌÃû³Æ /// </summary> [XmlAttribute] public string ShopName { get { return _ShopName; } set { this._ShopName = value; } } #endregion } ΪÁ˶ÔÄ£Ð͵ļ¯ºÏÐÅÏ¢½øÐÐÃèÊö£¬ÎÒÃÇÓÐÉè¼ÆÁËMServerGroupCollection£¨·þÎñÆ÷ȺÐÅÏ¢¼¯ºÏ£©£¬MServer£¨·þÎñÆ÷ȺϵķþÎñÆ÷ÐÅÏ¢£©£¬MServerShopCollection£¨·þÎñÆ÷¶ÔÓ¦µÄµêÆÌ¼¯ºÏ£© /// <summary> /// ·þÎñÆ÷ȺÐÅÏ¢¼¯ºÏ /// </summary> /// <remarks> [Serializable()] [XmlRoot("ServerGroups")] public class MServerGroupCollection : List<MServerGroup> { /// <summary> /// ·þÎñÆ÷ȺÐÅÏ¢¼¯ºÏ /// </summary> public MServerGroupCollection() { this._MServerGroups = new List<MServerGroup>(); } private List<MServerGroup> _MServerGroups; public List<MServerGroup> MServerGroups { get { return this._MServerGroups; } set { this._MServerGroups = value; } } } /// <summary> /// ·þÎñÆ÷ȺϵķþÎñÆ÷ÐÅÏ¢¼¯ºÏ /// </summary> [XmlRoot("Servers")] [Serializable()] public class MServerCollection : List<MServer> { /// <summary> /// ·þÎñÆ÷ȺϵķþÎñÆ÷ÐÅÏ¢¼¯ºÏ /// </summary> public MServerCollection() { this._MServers = new List<MServer>(); } private List<MServer> _MServers; public List<MServer> MServers { get { return this._MServers; } set { this._MServers = value; } } } /// <summary> /// ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌ¼¯ºÏ /// </summary> [Serializable()] [XmlRoot(ElementName = "Shops", Namespace = "http://www.linkedu.com.cn/MServerShop.xsd")] public class MServerShopCollection { private List<MServerShop> _MServerShops; [XmlElement("Shop")] public List<MServerShop> MServerShops { get { return this._MServerShops; } set { this._MServerShops = value; } } /// <summary> /// ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌ¼¯ºÏÀà /// </summary> public MServerShopCollection() { this._MServerShops = new List<MServerShop>(); } } ¾·ÖÎö£¬·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢¿ÉÓÃxml´æ´¢£¬Éè¼Æ¸ñʽÈçÏ£¨ÓÃxsdÃèÊö£¬Éè¼ÆºÃºó£¬ÎÒÃǰÑËü´´½¨µ½Êý¾Ý¿âÖУ© CREATE XML SCHEMA COLLECTION [dbo].[MServerShop] AS N'<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:t="http://www.linkedu.com.cn/MServerShop.xsd" targetNamespace="http://www.linkedu.com.cn/MServerShop.xsd" elementFormDefault="qualified"> <xsd:element name="Shops"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:sequence> <xsd:element name="Shop" type="t:ServerShop" minOccurs="0" maxOccurs="unbounded" /> </xsd:sequence> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:complexType name="ServerShop"> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:sequence /> <xsd:attribute name="ShopID" type="xsd:int" use="required" /> <xsd:attribute name="ShopName" type="xsd:string" use="required" /> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:schema>' ×îºó£¬ÎÒÉè¼ÆÁË£¨·þÎñÆ÷ȺÐÅÏ¢ ES_ServerGroup£©£¬£¨·þÎñÆ÷ȺϵķþÎñÆ÷ÐÅÏ¢ ES_Server£©µÄÊý¾Ý±í, ÔÚ ES_Server Êý¾Ý±íÖУ¬ÎÒÃǰѷþÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢·ÅÔÚES_ServerÊý¾Ý±íÏÂÓÃxml±íʾ£¬²¢¼ÓÈëÉϱßÉè¼ÆµÄxsdÔ¼Êø¡£ CREATE TABLE [dbo].[ES_ServerGroup]( [ServerGroupID] [int] NOT NULL, [ServerGroupName] [nvarchar](20) COLLATE Chinese_PRC_CI_AS NOT NULL, CONSTRAINT [PK_ES_SERVERGROUP] PRIMARY KEY CLUSTERED ( [ServerGroupID] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] CREATE TABLE [dbo].[ES_Server]( [ServerID] [int] NOT NULL, [ServerGroupID] [int] NULL, [ServerName] [nvarchar](20) COLLATE Chinese_PRC_CI_AS NOT NULL, [IP] [nvarchar](15) COLLATE Chinese_PRC_CI_AS NULL, [DomainName] [nvarchar](20) COLLATE Chinese_PRC_CI_AS NULL, [Dir] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL, [Url] [nvarchar](255) COLLATE Chinese_PRC_CI_AS NULL, [ServerShops] [xml](CONTENT [dbo].[MServerShop]) NULL, CONSTRAINT [PK_ES_SERVER] PRIMARY KEY CLUSTERED ( [ServerID] ASC )WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY] ) ON [PRIMARY] ÏÂÒ»²½£¬ÎÒ¿ªÊ¼Éè¼ÆÊý¾Ý·ÃÎʽӿڣ¬È»ºóÉè¼ÆÊý¾Ý·ÃÎʲãºÍÒµÎñ²ã£¬×îºóÉè¼Æ±íÏֲ㡣 ΪÁËÑÝʾ·½±ã£¬DemoÖÐÎÒʡȥÁ˽ӿڵÄÊéдºÍÒµÎñ²ã£¬ÎÒÔÚ±íÏÖ²ãÖ±½Óµ÷ÓÃÁËÊý¾Ý·ÃÎʲã Êý¾Ý·ÃÎʲã´úÂëÈçÏ£º /// <summary> /// ·þÎñÆ÷ȺϵķþÎñÆ÷ÐÅÏ¢Êý¾Ý·ÃÎʲã /// </summary> public class DServer { #region constructor public DServer() { } #endregion #region public method #region µÃµ½µ±Ç° #region µÃµ½Ä³·þÎñÆ÷ÐÅÏ¢ MServer GetMServer(int _ServerID) /// <summary> /// µÃµ½Ä³·þÎñÆ÷ÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷µÄServerID</param> /// <returns>µÃµ½Ä³·þÎñÆ÷ÐÅÏ¢</returns> public MServer GetMServer(int _ServerID) { DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); m.AddSql("select * from ES_Server where "); m.AddSql(" ServerID="); m.AddSql("ServerID", _ServerID); using (IDataReader idr = m.ExecuteReader(conn)) { if (idr.Read()) { return new MServer(_ServerID, idr["ServerName"].ToString(), idr["IP"].ToString(), idr["DomainName"].ToString(), idr["Dir"].ToString(), idr["Url"].ToString(), (int)idr["ServerGroupID"], idr["ServerShops"].ToString()); } } return null; } } #endregion #region ¹ØÓÚMServerShopµÄ²Ù×÷ #region µÃµ½·þÎñÆ÷¶ÔÓ¦µÄµêÆÌ¼¯ºÏ MServerShopCollection GetMServerShop(int _ServerID) /// <summary> /// µÃµ½·þÎñÆ÷¶ÔÓ¦µÄµêÆÌ¼¯ºÏ /// </summary> /// <param name="_ServerID">·þÎñÆ÷µÄServerID</param> /// <returns>µÃµ½·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÊý×é</returns> public MServerShopCollection GetMServerShop(int _ServerID) { DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); m.AddSql("select ServerShops from ES_Server where "); m.AddSql(" ServerID="); m.AddSql("ServerID", _ServerID); string xmlstr = m.ExecuteScalar(conn).ToString(); return Common.Utilities.SerializationHelper<MServerShopCollection>.FromXML(xmlstr); } } #endregion #region ±£´æ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ void SaveMServerShops(int _ServerID, MServerShopCollection _ServerShops) /// <summary> /// ±£´æ·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷µÄServerID</param> /// <param name="_ServerShops">·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢¼¯ºÏ</param> public void SaveMServerShops(int _ServerID, MServerShopCollection _ServerShops) { string xmlStr = Common.Utilities.SerializationHelper<MServerShopCollection>.ToXML(_ServerShops); DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); m.AddSql("update ES_Server set ServerShops=N'"); m.AddSql(xmlStr); m.AddSql("' where ServerID="); m.AddSql(_ServerID.ToString()); m.ExecuteNonQuery(conn); } } #endregion #region Ìí¼Ó·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ void AddMServerShop(int _ServerID, MServerShop _ServerShop) /// <summary> /// Ìí¼Ó·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷µÄServerID</param> /// <param name="_ServerShop">·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢</param> public void AddMServerShop(int _ServerID, MServerShop _ServerShop) { //update ES_Server set ServerShops.modify('declare namespace mi="http://www.linkedu.com.cn/MServerShop.xsd"; insert (<mi:Shop ShopID="3" ShopName="hopName3" />) as first into (//mi:Shops)[1]') where ServerID=1 //SELECT ServerID FROM ES_Server WHERE ServerID=1 and ServerShops.exist('declare namespace mi="http://www.linkedu.com.cn/MServerShop.xsd"; //mi:Shops/mi:Shop[@ShopID=4]')=1 //select ServerShops.value('declare namespace mi="http://www.linkedu.com.cn/MServerShop.xsd"; (//mi:Shops/mi:Shop/@ShopID)[1]=4', 'bit') as ShopID from ES_Server where ServerID=1 if @@rowcount > 0 begin select 1 end string xmlStr = Common.Utilities.SerializationHelper<MServerShop>.ToXML(_ServerShop, "mi"); DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); m.AddSql("SELECT ServerID FROM ES_Server WHERE ServerID=" + _ServerID.ToString()); m.AddSql(" and ServerShops.exist('declare namespace mi=/"http://www.linkedu.com.cn/MServerShop.xsd/"; //mi:Shops/mi:Shop[@ShopID=" + _ServerShop.ShopID.ToString() + "]')=1"); m.AddSql(" if @@rowcount = 0 begin "); m.AddSql("update ES_Server set ServerShops.modify('declare namespace mi=/"http://www.linkedu.com.cn/MServerShop.xsd/"; insert ("); m.AddSql(xmlStr); m.AddSql(") as first into (//mi:Shops)[1]') where ServerID=" + _ServerID.ToString() + " end"); m.ExecuteNonQuery(conn); } } #endregion #region ɾ³ý·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ void DeleteMServerShop(int _ServerID, int _ShopID) /// <summary> /// ɾ³ý·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷µÄServerID</param> /// <param name="_ShopID">µêÆÌID</param> public void DeleteMServerShop(int _ServerID, int _ShopID) { /* UPDATE ES_Server SET ServerShops.modify('declare namespace mi="http://www.linkedu.com.cn/MServerShop.xsd"; delete /mi:Shops/mi:Shop[@ShopID=1]') where ServerID=1 */ DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); m.AddSql("UPDATE ES_Server SET ServerShops.modify('declare namespace mi=/"http://www.linkedu.com.cn/MServerShop.xsd/";delete /mi:Shops/mi:Shop[@ShopID=" + _ShopID + "]') where ServerID=" + _ServerID); m.ExecuteNonQuery(conn); } } #endregion #region Ð޸ķþÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ void ModifyMServerShop(int _ServerID, MServerShop _ServerShop) /// <summary> /// Ð޸ķþÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷µÄServerID</param> /// <param name="_ServerShop">·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢,ÆäÖÐÒÔ_ServerShopµÄShopIDÊôÐÔΪÖ÷¼ü</param> public void ModifyMServerShop(int _ServerID, MServerShop _ServerShop) { //UPDATE ES_Server SET ServerShops.modify('declare namespace mi="http://www.linkedu.com.cn/MServerShop.xsd";replace value of (/mi:Shops/mi:Shop[@ShopID=128780281]/@ShopName)[1] with "ShopNamex"') where ServerID=1 DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); m.AddSql("UPDATE ES_Server SET ServerShops.modify('declare namespace mi=/"http://www.linkedu.com.cn/MServerShop.xsd/";replace value of (/mi:Shops/mi:Shop[@ShopID=" + _ServerShop.ShopID + "]/@ShopName)[1] with /"" + _ServerShop.ShopName + "/"') where ServerID=" + _ServerID); m.ExecuteNonQuery(conn); } } #endregion #endregion
#endregion #region Ôöɾ¸Ä #region Ìí¼Ó·þÎñÆ÷ÐÅÏ¢ int Add(int _ServerID, string _ServerName, string _IP, string _DomainName, string _Dir, string _Url, int _ServerGroupID) /// <summary> /// Ìí¼Ó·þÎñÆ÷ÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷ID</param> /// <param name="_ServerName">·þÎñÆ÷Ãû³Æ</param> /// <param name="_IP">·þÎñÆ÷IP</param> /// <param name="_DomainName">·þÎñÆ÷ÓòÃû</param> /// <param name="_Dir">Îļþ´æ·ÅĿ¼</param> /// <param name="_Url">Îļþ´æ·ÅUrl</param> /// <param name="_ServerGroupID">¶ÔÓ¦µÄ·þÎñÆ÷ȺID</param> /// <param name="_ServerShops">·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢</param> /// <returns>мӷþÎñÆ÷ÊÇ·ñ³É¹¦</returns> public bool Add(int _ServerID, string _ServerName, string _IP, string _DomainName, string _Dir, string _Url, int _ServerGroupID) { DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); Common.Utilities.ListDic<string, object> ld = new Common.Utilities.ListDic<string, object>(); ld.Add("ServerID", _ServerID); ld.Add("ServerName", _ServerName); ld.Add("IP", _IP); ld.Add("DomainName", _DomainName); ld.Add("Dir", _Dir); ld.Add("Url", _Url); ld.Add("ServerGroupID", _ServerGroupID); m.Insert(ld, "ES_Server"); return m.ExecuteNonQuery(conn) > 0; } } #endregion #region Ð޸ķþÎñÆ÷ÐÅÏ¢ bool Modify(int _ServerID, string _ServerName, string _IP, string _DomainName, string _Dir, string _Url, int _ServerGroupID) /// <summary> /// Ð޸ķþÎñÆ÷ÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷ID</param> /// <param name="_ServerName">·þÎñÆ÷Ãû³Æ</param> /// <param name="_IP">·þÎñÆ÷IP</param> /// <param name="_DomainName">·þÎñÆ÷ÓòÃû</param> /// <param name="_Dir">Îļþ´æ·ÅĿ¼</param> /// <param name="_Url">Îļþ´æ·ÅUrl</param> /// <param name="_ServerGroupID">¶ÔÓ¦µÄ·þÎñÆ÷ȺID</param> /// <param name="_ServerShops">·þÎñÆ÷¶ÔÓ¦µÄµêÆÌÐÅÏ¢</param> /// <returns>ÊÇ·ñ³É¹¦</returns> public bool Modify(int _ServerID, string _ServerName, string _IP, string _DomainName, string _Dir, string _Url, int _ServerGroupID) { DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); Common.Utilities.ListDic<string, object> ld = new Common.Utilities.ListDic<string, object>(); ld.Add("ServerName", _ServerName); ld.Add("IP", _IP); ld.Add("DomainName", _DomainName); ld.Add("Dir", _Dir); ld.Add("Url", _Url); ld.Add("ServerGroupID", _ServerGroupID); m.Update(ld, "ES_Server"); m.AddSql(" where ServerID="); m.AddSql("ServerID", _ServerID); return m.ExecuteNonQuery(conn) > 0; } } #endregion #region ɾ³ý·þÎñÆ÷ÐÅÏ¢ bool Delete(int _ServerID) /// <summary> /// ɾ³ý·þÎñÆ÷ÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷µÄServerID</param> /// <returns>ÊÇ·ñ³É¹¦</returns> public bool Delete(int _ServerID) { DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); m.Delete("ES_Server"); m.AddSql(" where ServerID="); m.AddSql("ServerID", _ServerID); return m.ExecuteNonQuery(conn) > 0; } } #endregion #endregion #region µÃµ½ÆäËü #region µÃµ½´Ë·þÎñÆ÷ËùÊô·þÎñÆ÷ȺÐÅÏ¢ MServerGroup GetServerGroup(int _ServerID) /// <summary> /// µÃµ½´Ë·þÎñÆ÷ËùÊô·þÎñÆ÷ȺÐÅÏ¢ /// </summary> /// <param name="_ServerID">·þÎñÆ÷ID</param> /// <returns>µÃµ½´Ë·þÎñÆ÷ËùÊô·þÎñÆ÷ȺÐÅÏ¢</returns> public MServerGroup GetServerGroup(int _ServerID) { DataProvider dp = SqlTools.HelpWWW.DataProviderUse; using (IDbConnection conn = dp.GetConnection()) { Common.DataAccess.ORMapping.IConvert ic = dp.GetIConvert(); Common.DataAccess.ORMapping.Mapping m = ic.GetNewMapping(); m.AddSql("select * from ES_ServerGroup where ServerGroupID = (select ServerGroupID from ES_Server where ServerID="); m.AddSql("ServerID", _ServerID); m.AddSql(")"); using (IDataReader idr = m.ExecuteReader(conn)) { return Common.Entity.ModelEntityHelp<MServerGroup>.Get_IList(idr)[0]; } } } #endregion #endregion #endregion #region static /// <summary> /// ¹¤³§·½·¨µÃµ½DServer¶ÔÏó /// </summary> /// <returns>DServer¶ÔÏó</returns> public static DServer Factory() { return Common.Singleton.Provider<DServer>.Instance; } #endregion } /// <summary> /// ·þÎñÆ÷ȺÐÅÏ¢Êý¾Ý·ÃÎʲã /// </summary> public class DServerGroup { #region constructor public DServerGroup() { } #endregion &
|