2012-04-19 101 views
1

我正在使用最新的DotNetOpenAuth版本。在localhost中一切正常。生产服务器中的DotNetOpenAuth错误

我看到以下异常消息:

无法转换类型 'DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform' 的目的为类型 'DotNetOpenAuth.OpenId.RelyingParty.IRelyingPartyBehavior'

的堆栈跟踪是:

at DotNetOpenAuth.Configuration.TypeConfigurationElement1.CreateInstance(T defaultValue, Boolean allowInternals) 
at DotNetOpenAuth.Configuration.TypeConfigurationCollection1.<>c__DisplayClass4.<CreateInstances>b__2(TypeConfigurationElement1 element) 
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.MoveNext() 
at DotNetOpenAuth.OpenId.RelyingParty.OpenIdRelyingParty..ctor(ICryptoKeyStore cryptoKeyStore, INonceStore nonceStore) 
at DotNetOpenAuth.OpenId.RelyingParty.OpenIdRelyingParty..ctor() 
at Ideiota.WebApp.Modules.Login.HandleOpenIdProviderResponse() 
at Ideiota.WebApp.Modules.Login.Page_Load(Object sender, EventArgs e) 
at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) 
at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) 
at System.Web.UI.Control.OnLoad(EventArgs e) 
at System.Web.UI.Control.LoadRecursive() 
at System.Web.UI.Control.LoadRecursive() 
at System.Web.UI.Control.LoadRecursive() 
at System.Web.UI.Control.LoadRecursive() 
at System.Web.UI.Control.LoadRecursive() 
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint);` 

回答

0

但错误是在配置文件中。新版本有变化...

+0

编辑你的问题应该被添加到原来的问题。不是一个答案。 – Shyju 2012-04-21 15:28:50

3

对于遇到此问题的其他人,以下是我遇到的问题。升级到这个新版本(通过我的情况下的NuGet)添加了一些新的配置,但没有删除旧的和无效的配置。

在你Web.config

<!-- old and invalid, remove this line --> 
<add type="DotNetOpenAuth.OpenId.Behaviors.AXFetchAsSregTransform, DotNetOpenAuth" /> 
<!-- keep this new line --> 
<add type="DotNetOpenAuth.OpenId.RelyingParty.Behaviors.AXFetchAsSregTransform, 
      DotNetOpenAuth.OpenId.RelyingParty" /> 
相关问题