中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

公安網(wǎng)站備案 時間淘寶推廣費用一般多少

公安網(wǎng)站備案 時間,淘寶推廣費用一般多少,做軟件需要網(wǎng)站,哈爾濱最新疫情出入政策文章速覽 概述例程請求類命名空間父類示例子類示例 命令類命名空間子類示例 記錄的數(shù)據(jù)結構實現(xiàn)綁定方法 堅持記錄實屬不易,希望友善多金的碼友能夠隨手點一個贊。 共同創(chuàng)建氛圍更加良好的開發(fā)者社區(qū)! 謝謝~ 概述 需求: 將指定的兩種類型的…

文章速覽

  • 概述
  • 例程
    • 請求類
      • 命名空間
      • 父類示例
      • 子類示例
    • 命令類
      • 命名空間
      • 子類示例
    • 記錄的數(shù)據(jù)結構
    • 實現(xiàn)綁定方法

堅持記錄實屬不易,希望友善多金的碼友能夠隨手點一個贊。
共同創(chuàng)建氛圍更加良好的開發(fā)者社區(qū)!
謝謝~

概述

需求:
將指定的兩種類型的類進行綁定,記錄到對應的字典中。

思路:
使用反射,獲取指定命名空間下,所有的請求類,判定其是否符合條件,如果符合條件,就尋找對應命名空間中是否存在相應的執(zhí)行類,將其添加入[請求&命令執(zhí)行]字典中,用做后續(xù)命令執(zhí)行的分發(fā)。

例程

首先,需要對兩種類型,各自創(chuàng)建其父類、或是接口;
兩者需要創(chuàng)建在不同的命名空間下,便于反射時的獲取

請求類

命名空間

Test.ReqActions

父類示例

此處的 ActionTypes 作為枚舉,可以定義并標記各中不同的請求

    public class ActionBase{public ActionBase(){}public ActionTypes Action { get; set; } public string Msg { get; set; }/// <summary>/// 標記每次執(zhí)行的req 和 ret 對應/// </summary>public long Id { get; set; }}

子類示例

繼承自操作父類,內(nèi)部可以自定義一些個性化屬性

    public class ReqCancelProcessing : ActionBase{public ReqCancelProcessing(){Action = ActionTypes.ReqCancelProcessing;AskCancel = true;}public bool AskCancel { get; set; }}

命令類

命名空間

Test.Commands```###  接口示例
定義命令實現(xiàn)的接口,讓繼承的子類,去做具體的邏輯實現(xiàn)
```csharp/// <summary>/// 指令的接口/// </summary>public interface ICommand{/// <summary>/// 處理成功返回1,失敗返回0/// </summary>/// <param name="obj">執(zhí)行指令的對象</param>/// <returns>返回執(zhí)行是否成功</returns>int Execute(object obj);}

子類示例

public class ReqCancelProcessingCommand : ICommand{public int Execute(object obj){ReqCancelProcessing req = obj as ReqCancelProcessing;try{//具體實現(xiàn)邏輯}catch (Exception ex){          }return 1;}}

記錄的數(shù)據(jù)結構

使用字典,這樣便于后期的查找和使用,僅作示例,用string或是上面的枚舉都是ok的

        /// <summary>/// 指令動作字典/// </summary>public Dictionary<string, ICommand> ActionToCommand { get; set; } = new Dictionary<string, ICommand>();

實現(xiàn)綁定方法

const string actionsNamespace = "Test.ReqActions";const string commandsNamespace = "Test.Commands";/// <summary>/// 將指令和Action相互綁定,并加入字典中/// </summary>private void AddActionsToDictionary(){//獲取當前程序集Assembly assembly = Assembly.GetExecutingAssembly();foreach (Type type in assembly.GetTypes()){//檢查類型是否在ReqActions命名空間中 并且繼承于 ActionBaseif (type.Namespace == actionsNamespace &&typeof(ActionBase).IsAssignableFrom(type)){//獲取類的全名string actionFullName = type.FullName;//獲取對應的Command類型Type commandType = assembly.GetTypes().FirstOrDefault(t =>t.Namespace == commandsNamespace && t.Name == type.Name + "Command");//檢查對應的Command類型是否存在, 并且 繼承 與 ICommandif (commandType != null && typeof(ICommand).IsAssignableFrom(commandType)){//創(chuàng)建并添加實例ActionToCommand.Add(actionFullName, (ICommand)Activator.CreateInstance(commandType));}}}}
http://www.risenshineclean.com/news/4533.html

相關文章:

  • 如何做視頻網(wǎng)站旗下賬號怎么樣做網(wǎng)站推廣
  • 廣告公司網(wǎng)站制作培訓方案及培訓計劃
  • 查詢網(wǎng)站信息免費推廣平臺排行
  • 龍灣建設智慧網(wǎng)站合肥網(wǎng)站外包
  • 綏化北京網(wǎng)站建設小程序開發(fā)需要哪些技術
  • c 做網(wǎng)站后端緬甸最新新聞
  • 在哪幾個網(wǎng)站里做自媒體賺錢seo常見優(yōu)化技術
  • 日本一級做a在線播放免費視頻網(wǎng)站seo專業(yè)知識培訓
  • 鮮花網(wǎng)頁設計模板昆明seo建站
  • 網(wǎng)站管理助手數(shù)據(jù)庫qq刷贊網(wǎng)站推廣
  • 做網(wǎng)站接電話一般要會什么批量查詢收錄
  • 濟南集團網(wǎng)站建設費用云浮seo
  • 如何跟客戶介紹網(wǎng)站建設和推廣域名查詢網(wǎng)址
  • 抖音營銷百度seo sem
  • 食堂網(wǎng)站源代碼php+mysql抖音視頻排名優(yōu)化
  • 國外訂房網(wǎng)站怎么和做網(wǎng)站排名優(yōu)化培訓哪家好
  • 網(wǎng)站開發(fā)價格網(wǎng)頁制作教程視頻
  • 自己做一個網(wǎng)站多少錢seo搜狗排名點擊
  • 專業(yè)網(wǎng)站建設設計公司搜索關鍵詞怎么讓排名靠前
  • 2020電商網(wǎng)站排行榜seo網(wǎng)站建站
  • wordpress刪除垃圾評論東莞網(wǎng)站seo技術
  • 公司做網(wǎng)站推廣百度和阿里巴巴手機搜索引擎排名
  • wordpress視頻站主題廣告制作公司
  • 網(wǎng)站開發(fā)需求分析編寫目的聚合搜索引擎入口
  • 天津開發(fā)網(wǎng)站公司免費b站推廣軟件
  • 重慶新聞頻道直播 今天seo主要優(yōu)化
  • 網(wǎng)站建設公司專業(yè)網(wǎng)站開發(fā)需求seo服務外包客服
  • 織夢裝修網(wǎng)站模板有域名有服務器怎么做網(wǎng)站
  • wordpress在哪兒打開企業(yè)網(wǎng)站seo優(yōu)化外包
  • 網(wǎng)站域名空間費發(fā)票廣告詞