Exemple #1
0
        string MakeInterfaceMenthods <T>()
        {
            var type    = typeof(T);
            var gettype = type.GetMethods();

            StringBuilder Methods        = new StringBuilder();
            string        returnType     = string.Empty;
            string        classType      = string.Empty;
            StringBuilder stringBuilder  = new StringBuilder();
            StringBuilder stringBuilder2 = new StringBuilder();

            foreach (var VARIABLE in gettype)
            {
                returnType = VARIABLE.ReturnType.ToString()
                             .Replace(typeof(List <>).Namespace + ".", string.Empty)
                             .Replace(typeof(int).Namespace + ".", string.Empty)
                             .Replace(typeof(T).Namespace + ".", string.Empty)
                             .Replace("Boolean", "bool")
                             .Replace("Int32", "int")
                             .Replace("`1", string.Empty)
                             .Replace("[", "<")
                             .Replace("]", ">");


                if (VARIABLE.IsPublic)
                {
                    classType = "public ";
                }
                if (VARIABLE.IsPrivate)
                {
                    classType = "private ";
                }
                if (VARIABLE.IsStatic)
                {
                    classType += " static";
                }
                var Parameters = VARIABLE.GetParameters();
                foreach (var VARIABLEP in Parameters)
                {
                    stringBuilder.Append(",");
                    stringBuilder.Append(
                        VARIABLEP.ToString()
                        .Replace(typeof(List <>).Namespace + ".", string.Empty)
                        .Replace(typeof(int).Namespace + ".", string.Empty)
                        .Replace(typeof(T).Namespace + ".", string.Empty)
                        .Replace("Boolean", "bool")
                        .Replace("Int32", "int")
                        .Replace("`1", string.Empty)
                        .Replace("[", "<")
                        .Replace("]", ">"));
                }
                if (Parameters.Length > 0)
                {
                    stringBuilder.Remove(0, 1);
                }
                else
                {
                    stringBuilder.Clear();
                }


                stringBuilder2.Append("					")
                .Append(classType)
                .Append(returnType)
                .Append(" ")
                .Append(VARIABLE.Name)
                .Append("(")
                .Append(stringBuilder)
                .Append(")");
                stringBuilder.Clear();
                stringBuilder2.AppendLine();
                stringBuilder2.AppendLine("					{");
                stringBuilder2.AppendLine("					throw new NotImplementedException();");
                stringBuilder2.AppendLine("					}");
                Methods.Append(stringBuilder2);


                stringBuilder2.Clear();
            }


            return(Methods.ToString());
        }
Exemple #2
0
            public void a()
            {
                #region 生成接口拥有的方法
                var type    = typeof(IDal <AppendCC>);
                var gettype = type.GetMethods();

                StringBuilder Methods        = new StringBuilder();
                string        returnType     = string.Empty;
                string        classType      = string.Empty;
                StringBuilder stringBuilder  = new StringBuilder();
                StringBuilder stringBuilder2 = new StringBuilder();
                foreach (var VARIABLE in gettype)
                {
                    returnType = VARIABLE.ReturnType.ToString()

                                 .Replace(typeof(List <>).Namespace + ".", string.Empty)
                                 .Replace(typeof(int).Namespace + ".", string.Empty)
                                 .Replace(typeof(AppendCC).Namespace + ".", string.Empty)
                                 .Replace("`1", "")
                                 .Replace("[", "<")
                                 .Replace("]", ">");



                    if (VARIABLE.IsPublic)
                    {
                        classType = "Public ";
                    }
                    if (VARIABLE.IsPrivate)
                    {
                        classType = "Public ";
                    }
                    if (VARIABLE.IsStatic)
                    {
                        classType += " Static";
                    }
                    var Parameters = VARIABLE.GetParameters();
                    foreach (var VARIABLEP in Parameters)
                    {
                        stringBuilder.Append(",");
                        stringBuilder.Append(
                            VARIABLEP.ToString()
                            .Replace(typeof(List <>).Namespace + ".", string.Empty)
                            .Replace(typeof(int).Namespace + ".", string.Empty)
                            .Replace(typeof(AppendCC).Namespace + ".", string.Empty)
                            .Replace("`1", "")
                            .Replace("[", "<")
                            .Replace("]", ">"));
                    }
                    if (Parameters.Length > 0)
                    {
                        stringBuilder.Remove(0, 1);
                    }
                    else
                    {
                        stringBuilder.Clear();
                    }



                    stringBuilder2.Append(classType).Append(returnType).Append(" ").Append(VARIABLE.Name).Append("(").Append(stringBuilder).Append(")");
                    stringBuilder.Clear();
                    stringBuilder2.AppendLine();
                    stringBuilder2.AppendLine("{");
                    stringBuilder2.AppendLine("     throw new NotImplementedException();");
                    stringBuilder2.AppendLine("}");
                    Methods.Append(stringBuilder2);



                    stringBuilder2.Clear();
                }



                #endregion
            }