/// <summary> /// Adds AliasName(mailing list). /// </summary> /// <param name="aliasName">AliasName name. eg. [email protected]</param> /// <param name="Description">AliasName Description.</param> /// <param name="AliasMembers">AliasName AliasMembers.</param> /// <param name="domainID">DomainID where AliasName belongs.</param> /// <param name="isPublic">Specifies if accessible to public or only authenticated users.</param> /// <returns></returns> public DataRow AddAlias(string aliasName,string Description,string AliasMembers,string domainID,bool isPublic) { DataRow retVal = null; switch(m_DB_Type) { #region DB_Type.XML case DB_Type.XML: DataSet dsAliasesCopy = dsAliases.Copy(); DataRow dr = dsAliasesCopy.Tables["Aliases"].NewRow(); dr["AliasID"] = Guid.NewGuid().ToString(); dr["AliasName"] = aliasName; dr["Description"] = Description; dr["AliasMembers"] = AliasMembers; dr["DomainID"] = domainID; dr["IsPublic"] = isPublic; dsAliasesCopy.Tables["Aliases"].Rows.Add(dr); dsAliasesCopy.WriteXml(m_DataPath + "Aliases.xml",XmlWriteMode.IgnoreSchema); retVal = dr; break; #endregion #region DB_Type.MSSQL case DB_Type.MSSQL: using(WSqlCommand sqlCmd = new WSqlCommand(m_ConStr,"lspr_AddAlias")){ sqlCmd.AddParameter("@AliasName" ,SqlDbType.NVarChar,aliasName); sqlCmd.AddParameter("@Description" ,SqlDbType.NVarChar,Description); sqlCmd.AddParameter("@Members" ,SqlDbType.NVarChar,AliasMembers); sqlCmd.AddParameter("@DomainID" ,SqlDbType.UniqueIdentifier,domainID); sqlCmd.AddParameter("@IsPublic" ,SqlDbType.Bit,isPublic); DataSet ds = sqlCmd.Execute(); ds.Tables[0].TableName = "Aliases"; if(ds.Tables["Aliases"].Rows.Count > 0){ return ds.Tables["Aliases"].Rows[0]; } } break; #endregion #region DB_Type.WebServices case DB_Type.WebServices: using(RemoteAdmin eng = new RemoteAdmin()){ _Core.InitWebService(m_WebServicesUrl,m_WebServicesPwd,m_WebServicesUser,eng); return eng.AddAlias(aliasName,Description,AliasMembers,domainID,isPublic).Tables["Aliases"].Rows[0]; } #endregion } return retVal; }