ASP.net本地调试时正常,发布时错误的几个问题解析
1、使用了微软的身份验证,报数据库只读。确认App_data文件夹的权限,添加Everyone用户,并将其设置为完全控制。
2、出现类型“XXXX”同时存在于两个dll文件的错误。XXXX最常见的是_Default,因为VS在添加新网页的时候默认名称是这个,如果使用了Default建立了新网页,而后将其重命名了,如果有几个网页都采用这种方式,就会造成这个错误。检查重命名过的.aspx,cs文件可以发现类声明部分是相同的
public partial class _Default : System.Web.UI.Page
在aspx网页中也出现了相同的两个
Inherits="_Default"
将这两处改成重命名以后的文件名即可。
3、出现Login不能转化为System.Web.UI.WebControls.Login的错误。因为自身的类名与.net中的类名想冲突,采用其他名字即可。这也告诉我们在命名网页的时候尽量采用 xxx_yyy的方式,避免与系统冲突。