zoukankan      html  css  js  c++  java
  • 项目中用到的架构模式(持续更新)

    1. asp.net mvc 

    view + controller + model

    2. 利用StructureMap Ioc

       public class BootStrapper
        {
            public static void ConfigureStructureMap()
            {
                // Initialize the registry
                ObjectFactory.Initialize(x =>
                {
                    x.AddRegistry<ModelRegistry>();
    
                });
            }
    
            public class ModelRegistry : Registry
            {
                public ModelRegistry()
                {
                    //ClientControl
                    ForRequestedType<IGetMainAllData>().TheDefault.Is.OfConcreteType<GetMainAllDataByTime>(); 
                    ForRequestedType<IGetHomeAllData>().TheDefault.Is.OfConcreteType<GetHomeAllDataByTime>();              
                    ForRequestedType<IGetEnvironmentAllData>().TheDefault.Is.OfConcreteType<GetEnvironmentAllDataByTime>();
                    ForRequestedType<IGetBuildAllData>().TheDefault.Is.OfConcreteType<GetBuildAllDataByTime>();
                    ForRequestedType<IGetEnergyAllData>().TheDefault.Is.OfConcreteType<GetEnergyAllDataByTime>();
                    ForRequestedType<IGetGridAllData>().TheDefault.Is.OfConcreteType<GetGridAllDataByTime>();
                    ForRequestedType<IGetQueryAllData>().TheDefault.Is.OfConcreteType<GetQueryAllDataByTime>();
                    ForRequestedType<IGetWarnAllData>().TheDefault.Is.OfConcreteType<GetWarnAllDataByTime>();
                    ForRequestedType<IGetSplitAllData>().TheDefault.Is.OfConcreteType<GetSplitAllDataByTime>();
    
                    //DataAccess
                    ForRequestedType<IMainData>().TheDefault.Is.OfConcreteType<MainDataControl>();
                    ForRequestedType<IHomePageData>().TheDefault.Is.OfConcreteType<HomePageDataControl>();
                    ForRequestedType<IEnvironmentParametersData>().TheDefault.Is.OfConcreteType<EnvironmentParametersDataControl>();
                    ForRequestedType<IBuildingData>().TheDefault.Is.OfConcreteType<BuildingDataControl>();
                    ForRequestedType<IEnergyData>().TheDefault.Is.OfConcreteType<EnergyDataControl>();
                    ForRequestedType<IGridData>().TheDefault.Is.OfConcreteType<GridDataControl>();
                    ForRequestedType<IQueryData>().TheDefault.Is.OfConcreteType<QueryDataControl>();
                    ForRequestedType<IWarnData>().TheDefault.Is.OfConcreteType<WarnDataControl>();
    
                    //Cache
                    ForRequestedType<ICacheStorage>().TheDefault.Is.OfConcreteType<HttpContextCache>();
                }
            }
        }

    3. asp.net + extjs3.4 + fusioncharts

    4. (winform)mvp + service + model + repository

    5. spring 3.1 mvc  + service + persistense + mybatis 3

    6. Request + Response 模式

    7.Null Object 模式

       public class NullObjectCachingAdapter : ICacheStorage 
        {        
            public void Remove(string key)
            {
                // Do nothing
            }
    
            public void Store(string key, object data)
            {
                // Do nothing
            }
    
            public T Retrieve<T>(string storageKey)
            {
                return default(T);
            }        
        }
  • 相关阅读:
    IdentityServer4 接口说明
    MQTT中的Retained(保留消息) 与 LWT(最后遗嘱)
    Docker常用命令
    开源服务容错处理库Polly使用文档
    MQTT 主题的高级特性
    MQTT的$SYS主题定义
    RabbitMQ消息队列之Windows下安装和部署
    RabbitMQ多台物理机集群搭建
    Ocelot.json完整配置文件
    nginx.conf文件配置明细详解
  • 原文地址:https://www.cnblogs.com/smileberry/p/3054843.html
Copyright © 2011-2022 走看看