zoukankan      html  css  js  c++  java
  • .net core 【二】

    一、构造引擎:

    1.首先Core层创建一个接口实例:

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace General.Core
    {
        //系统的引擎接口
        public interface IEngine
        {
            /// <summary>
            /// 构建一个实例
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <returns></returns>
            T Resolve<T>() where T : class;
        }
    }

    2. web层写一个继承实例的方法

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace General.Core
    {
        //系统的引擎接口
        public interface IEngine
        {
            /// <summary>
            /// 构建一个实例
            /// </summary>
            /// <typeparam name="T"></typeparam>
            /// <returns></returns>
            T Resolve<T>() where T : class;
        }
    }

    3. 在core层添加该方法

    using System;
    using System.Collections.Generic;
    using System.Runtime.CompilerServices;
    using System.Runtime;
    using System.Text;
    
    namespace General.Core
    {
        public class EnginContext
        {
            private static IEngine _engine;
    
            /// <summary>
            /// 静态方法的形式去构造出一个对象
            /// </summary>
            /// <param name="engine"></param>
            /// <returns></returns>
            /// 该方法就是保证每次只有一个
            [MethodImpl(MethodImplOptions.Synchronized)]
            public static IEngine Initialize(IEngine engine)
            {
                if (_engine == null)
                    _engine = engine;
                return _engine;
            }
    
            /// <summary>
            /// 当前引擎
            /// </summary>
            public static IEngine Current
            {
                get
                {
                    return _engine;
                }
            }
        }
    }

    4. 添加一个业务层操作对象

     // 添加对象
                EnginContext.Initialize(new GeneralEngine(services.BuildServiceProvider()));
  • 相关阅读:
    异常:Unknown lifecycle phase "mvn". You must specify a valid lifecycle
    java中数的表示
    windows7 桌面突然卡住了,点击右键点不了,点击桌面软件点不了,怎么办?
    DJango错误日志生成
    drf框架接口文档
    drf框架中分页组件
    UVa10234 Race
    洛谷P2982 [USACO10FEB]慢下来Slowing down
    UVa10820 Send a Table
    POJ1861 Network
  • 原文地址:https://www.cnblogs.com/wangjinya/p/11651473.html
Copyright © 2011-2022 走看看