[C#]在主控台使用Unity的方式

大部份的文章都介紹在mvc中使用,那主控台又如何使用Unity呢?

前言

因為公司專案要導向unity,而公司同仁因為舊專案有主控台的程式,所以跑來問我如何在主控台使用unity,因為大家普通都是在講mvc或web api如何使用,那這篇就來說明一下用主控台怎麼開始使用unity吧?當然在owin selfhost或windows service的概念都會是差不多的

安裝unity

先到nuget下載安裝

先建立介面和實作類別

public interface IMessageService
    {
        string Get();
    }

    public class MessageService : IMessageService
    {
        public string Get()
        {
            return "hello";
        }
    }

然後再看一下主控台的部份吧

class Program
    {
        static void Main(string[] args)
        {
            var service=UnityInit().Resolve<IMessageService>(); //因為我們沒辦法用注入的,所以直接Resolve介面就可以使用了
            Console.WriteLine(service.Get());
            Console.ReadKey();
        }

        static UnityContainer UnityInit()
        {
            var container = new UnityContainer();
            container.RegisterType<IMessageService, MessageService>();
            return container; //初始化後之接回傳使用
        }
    }

結論

其實這篇很簡單,但或許對一些人還是有幫助。