您的位置:首页 > 其它

项目中遇到的零散问题(.NET方面)

2016-03-23 13:02 393 查看
1.判断类型是否有无参构造函数

public static bool ContainsPublicParamlessCtor(Type type)
{
ConstructorInfo[] ctors = type.GetConstructors(BindingFlags.Public | BindingFlags.Instance);

for (int i = 0; i < ctors.Length; i++)
{
if (ctors[i].ToString().Contains(".ctor()"))
return true;
}
return false;
}

public static bool ContainsPublicParamlessCtor(Type type)
{
return type.GetConstructors()
.Any(constructor => constructor.GetParameters()
.All(parameter => parameter.IsOptional));
}

public static bool TestAllDerivedClassesContainsPublicParamlessConstructor(Type currentType)
{
IList<Type> types = Assembly.GetExecutingAssembly().GetTypes()
.Where(type => type.IsSubclassOf(currentType))
.Where(type => !ContainsPublicParamlessCtor(type))
.ToList();

return types.Count() == 0;
}


2.访问ASP.NET网站时IIS报错“web服务器被配置为不列出此目录的内容”

解决方法:添加下IIS的默认文档设置

模块 DirectoryListingModule
通知 ExecuteRequestHandler
处理程序 StaticFile


3.访问ASP.NET网站时提示错误:配置错误定义了重复的“system.web.extensionsscriptingscriptResourceHandler”

win7系统上IIS默认使用的是.NET V4.0的应用程序池,

解决方法:新加v2.0的程序池来部署项目

4.点击txt文件链接时被浏览器直接打开显示,而不是提示下载

解决方法:在IIS中为指定目录添加http响应头 Content-Dispostion:attachment

5.反射时提示异常ReflectionTypeLoadException

异常信息:“未处理 System.Reflection.ReflectionTypeLoadException Message=”无法加载一个或多个请求的类型。有关更多信息,请检索LoaderExceptions属性。”

一般在反射类型时提示异常,比较可能的是没有添加类型所依赖的其他程序集。

6.IE9不能正常加载css文件

IIS6下IE9无法正常加载css文件而其他浏览器可以

可能是IIS中MIME类型配置不对,重新配置下css的MIME类型
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: