2011-06-17 90 views
2

需要首先解释历史,然后我们迄今所做的...可能有点长。非常奇怪的访问问题

我们继承了一个.net Web应用程序,它使用Infragistics Web Controls与SQL通信。

已经在开发盒上测试了一切,效果很好。已经推出了一个测试盒,所有的作品都很棒。然后,已经推出到生产服务器,现在我们遇到问题.....

主要问题是一个页面有几个下拉列表,你从一个列表中选择一个值,它会谈到SQL框,然后填充字段,其中一个是Infragistics Web网格。现在,从下拉列表中选择一个值向SQL服务器发送一个查询,并且我知道这是工作并返回数据,因为网格栅格正在填充返回数据之前页面上的所有其他字段来自查询。这将SQL方面计算在等式之外。

的网页抛出2个错误:

“Sys.InvalidOperationException:型号Infragistics.Web.UI.ControlMain已经注册的类型可以定义multuiple倍或定义它可以将脚本文件已经被加载,一个可能的原因是在部分更新期间改变了设置。“

“Sys.ArgumentTypeException:类型Infragistics.Web.UI.WebCurrencyEditor'的对象不能转换TP型 '' 参数名:例如”

所以,我们将相同的代码推出到三台服务器,并且只在尝试访问生产服务器上的页面时失败。首先你会想到的是 - 权限。

下一步是在另一台机器(桌面)上尝试使用我的详细信息,并且仍然得到相同的错误 - 所有Dev和Test都很好,但不在Prod上。下一步,尝试其他机器上的其他用户。点击并错过 - 有些用户无法运行Prod页面,其他用户可以。

所以,从这里,看看所有的AD团体,谁可以进来的人,并与我的相比。将我添加到我没有的所有组中,然后再试一次 - 相同结果,如果没有上述错误,则无法加载页面。因此,我的同事可以从他的机器上得到它,来到我的,登录,并且可以很好地达到它。我去他的机器,不能去它,我也不能从我的机器。

下一步 - 我将RDC导入测试服务器,并且我可以访问生产框中的网站。我将RDC放入DEV服务器,并且我可以访问生产箱上的网站。因此,我可以计算出SQL方面,我可以假设代码是很好的,因为适用于其他人。权限已被应用,有关AD组与其他可以访问它的组相同...

我没有做什么?当然,有一件事情我很容易做不到...有什么建议吗?对于冗长的帖子抱歉,但解释了我们试图解决这个问题的程度!

回答

1

我已经包含指向文章的链接,该文章指出了您在负载平衡/服务器场方案中遇到的错误的一个可能原因:AjaxControlToolkit & ScriptResource.axd load balancer (web farm) related issue

无论你的问题是否与此有关,直接原因是ScriptManager被欺骗了两次注册相同的脚本。我不认为这与直接权限有关。但是会有一些潜在的问题:希望不会有Infragistics控制自己的bug。

我要做的第一个明显的建议是确保所有服务器都运行相同(也可能是最新版)的AjaxControlToolkit。