/// <summary>
        /// 创建代码
        /// </summary>
        /// <remarks>
        /// 这里需要输出3组文件
        /// 1.客户端接口
        /// 2.代理类
        /// 3.代理类和接口的绑定
        /// </remarks>
        /// <param name="dllFile"></param>
        /// <param name="outFolder">输出目录</param>
        /// <param name="nameSpace">基础的命名空间</param>
        public static void CreateCode(string dllFile, string outFolder, string nameSpace)
        {
            StringBuilder interfaceCode = new StringBuilder();

            var           dll             = Assembly.LoadFrom(dllFile);
            StringBuilder proxyregBuilder = new StringBuilder();

            foreach (var type in dll.GetTypes())
            {
                if (type.IsInterface)
                {
                    var i = type.GetCustomAttributes(typeof(ClientInterfaceAttribute), true);
                    if (i.Length > 0)
                    {
                        //  将接口代码的代码重新复制过去
                        var code = new CreateInterfaceCode(type).CreateCode();
                        interfaceCode.Append(code);

                        //  生成客户端解包代码并写入对应文件
                        code = new CreateReadCode(type).CreateCode();

                        string typeName = Utils.GetFixInterfaceName(type.Name);

                        var context = FileCodeBase
                                      .Replace("#code#", code)
                                      .Replace("#namespace#", nameSpace)
                                      .Replace("#ClassName#", typeName)
                                      .Replace("`", "\"");

                        string fileName = Path.Combine(outFolder, string.Format(@"Controller\{0}\{0}Controller.Net.cs", typeName));
                        var    fi       = new FileInfo(fileName);
                        if (!fi.Directory.Exists)
                        {
                            fi.Directory.Create();
                        }

                        File.WriteAllText(fileName, context, Encoding.UTF8);
                    }
                }
            }
            var fileContext = InterfaceCodeBase
                              .Replace("#code#", interfaceCode.ToString())
                              .Replace("#namespace#", nameSpace)
                              .Replace("`", "\"");

            var file = Path.Combine(outFolder, @"Controller\Auto\LogicInterface.cs");

            new FileInfo(file).Directory.Create();

            File.WriteAllText(file, fileContext, Encoding.UTF8);
        }
        /// <summary>
        /// 创建代码
        /// </summary>
        /// <remarks>
        /// 这里需要输出3组文件
        /// 1.客户端接口
        /// 2.代理类
        /// 3.代理类和接口的绑定
        /// </remarks>
        /// <param name="dllFile"></param>
        /// <param name="outFolder">输出目录</param>
        /// <param name="nameSpace">基础的命名空间</param>
        public static void CreateCode(string dllFile, string outFolder, string nameSpace)
        {
            StringBuilder interfaceCode = new StringBuilder();

            var dll = Assembly.LoadFrom(dllFile);
            StringBuilder proxyregBuilder = new StringBuilder();

            foreach (var type in dll.GetTypes())
            {
                if (type.IsInterface)
                {
                    var i = type.GetCustomAttributes(typeof(ClientInterfaceAttribute), true);
                    if (i.Length > 0)
                    {
                        //  将接口代码的代码重新复制过去
                        var code = new CreateInterfaceCode(type).CreateCode();
                        interfaceCode.Append(code);

                        //  生成客户端解包代码并写入对应文件
                        code = new CreateReadCode(type).CreateCode();

                        string typeName = Utils.GetFixInterfaceName(type.Name);

                        var context = FileCodeBase
                            .Replace("#code#", code)
                            .Replace("#namespace#", nameSpace)
                            .Replace("#ClassName#", typeName)
                            .Replace("`", "\"");

                        string fileName = Path.Combine(outFolder, string.Format(@"Controller\{0}\{0}Controller.Net.cs", typeName));
                        var fi = new FileInfo(fileName);
                        if (!fi.Directory.Exists)
                            fi.Directory.Create();

                        File.WriteAllText(fileName, context, Encoding.UTF8);
                    }
                }
            }
            var fileContext = InterfaceCodeBase
            .Replace("#code#", interfaceCode.ToString())
            .Replace("#namespace#", nameSpace)
            .Replace("`", "\"");

            File.WriteAllText(Path.Combine(outFolder, @"Controller\Auto\LogicInterface.cs"), fileContext, Encoding.UTF8);
        }