[WebMethod] [System.Web.Services.Protocols.SoapHeader("header")] public string GetSortCodeByFieldName(string ModelName, string FieldName) { if (header != null && header.ValidateLoginIdentity(header.clientTicket)) { switch (ModelName.ToLower()) { case "base_button": return BaseDal.GetSortCode<Base_Button>(FieldName).ToString(); case "base_buttonpermission": return BaseDal.GetSortCode<Base_ButtonPermission>(FieldName).ToString(); case "base_coderule": return BaseDal.GetSortCode<Base_CodeRule>(FieldName).ToString(); default: return "10000"; } } else { throw new Exception("您没有权限!"); } }
因为调用的都是一个方法 只是传递的对象不一样 怎么样做成通用的
对象位于 RWX.Model.DLL 中 有人说用反射 不知道怎么 用
做成这样
case "base_button": Assembly asm = Assembly.Load("Rwx.Model"); object ass = asm.CreateInstance("Rwx.Model." + ModelName); return BaseDal.GetSortCode<ass>(FieldName).ToString();
红色ass 系统提示未找到类型或命名空间
反射