• Provider详解


    对provider的一点学习笔记,怕以后忘了记下来便于以后学习:

    示例:

    有一个MessageModel实体类,对它的操作有Insert()和Get()方法,持久化数据在SqlServer数据库中或Xml文件里。根据配置文件中的配置来决定数据持久化方案是使用SqlServer数据库还是Xml文件。

    还有一个message的API 还有一个继承与ProviderBase的操作Message的抽象类 其包括两个子类来实现Message的持久化SqlMessageProvider XmlMessageProvider

    剩下两个是Message的Provider的集合类:MessageProviderCollection,和Message的Provider的配置类:MessageProviderConfigurationSession

    其执行过程是用Message的API(Message类)执行Insert和Get方法,在实例化类Message时先调其构造函数,执行Initialize初始化,其操作用语句 messageConfig = (MessageProviderConfigurationSection)ConfigurationManager.GetSection("MessageProvider")

    ;找到配置文件中的“MEssageProvider”节点,然后利用 类ProvidersHelper中的InstantiateProviders函数调用InstantiateProvider函数执行每一个配置文件中Provider的Initialize            ProviderBase provider = Activator.CreateInstance(settingsType) as ProviderBase;


                provider.Initialize(providerSettings.Name, providerSettings.Parameters);

    从而使每个配置文件中的Provider获取配置文件的Connection

    然后我们就可以跟据Provider的默认设置来返回具体的Providers


  • 相关阅读:
    混合开发的坑(3) ---关于es6
    混合开发的坑(2) ---pdf展示
    混合开发的坑(1) ---ajax请求
    vue.js
    vue中 import引入组件
    vue中 静态文件引用注意事项
    Oracle 数据库链接
    Oracle中的NVL,NVL2,NULLIF以及COALESCE函数使用
    Merge into 使用
    C# —— IList, ArrayList与List的区别详解
  • 原文地址:https://www.cnblogs.com/f204eng/p/1372084.html
Copyright © 2020-2023  润新知