मैं हाल ही में एक .net 2.0 परियोजना है जो अपनी दाल दृश्य स्टूडियो के अंतर्गत .NET 4.0 के लिए सबसोनिक 2.2 द्वारा उत्पन्न की थी 2010सिस्टम.Security.VerificationException: ऑपरेशन रनटाइम को अस्थिर कर सकता है। (सबसोनिक 2.2)
परियोजनाओं त्रुटि के बिना परिवर्तित लेकिन अब मैं एक नहीं बल्कि नीच हो रही उन्नत करने के लिए करने की कोशिश की जब मैं इसे लॉन्च करने का प्रयास करता हूं तो त्रुटि संदेश।
System.Security.VerificationException: Operation could destabilize the runtime.
at SubSonic.DataProvider.ApplyConfig(NameValueCollection config, Boolean& parameterValue, String configName) in C:\Documents and Settings\Desktop\4.0 Production\rel_1.0\server\Server.DAL\Server.DAL.SubSonic\DataProviders\DataProvider.cs:line 955
at SubSonic.DataProvider.Initialize(String name, NameValueCollection config) in C:\Documents and Settings\Desktop\4.0 Production\rel_1.0\server\Server.DAL\Server.DAL.SubSonic\DataProviders\DataProvider.cs:line 916
at System.Web.Configuration.ProvidersHelper.InstantiateProvider(ProviderSettings providerSettings, Type providerType)
कोड जहां यह अपवाद फेंक है:
ApplyConfig(config, ref extractClassNameFromSPName, ConfigurationPropertyName.EXTRACT_CLASS_NAME_FROM_SP_NAME);
private static void ApplyConfig(System.Collections.Specialized.NameValueCollection config, ref bool parameterValue, string configName)
{
if(config[configName] != null)
{
parameterValue = Convert.ToBoolean(config[configName]);
}
}
यह यहाँ के समान कॉल करता है, फर्क सिर्फ इतना है कि यह किया जा रहा है कड़ाई से एक स्ट्रिंग और कोई बूलियन नहीं यह जोड़ तोड़ रहा है।
private static void ApplyConfig(System.Collections.Specialized.NameValueCollection config, ref string parameterValue, string configName)
{
if(config[configName] != null)
{
parameterValue = config[configName];
}
}
config 3 कुंजी generateNullableProperties, connectionStringName, generatedNamespace extractClassNameFromSPName == साथ एक System.Collections.Specialized.NameValueCollection के रूप में परिभाषित किया गया है झूठे
EDIT1: कोड उस त्रुटि को शुरू करता है Global.asax
System.Data.SqlClient.SqlDependency.Start(SystemSetting.Schema.Provider.DefaultConnectionString);
EDIT2 की Application_Start() विधि: त्रुटि एक targetinvocation त्रुटि मेरी web.config
<SubSonicService defaultProvider="appPlan">
<providers>
<clear/>
<add name="appPlan" type="SubSonic.SqlDataProvider, appPlan.Server.DAL.SubSonic" generateNullableProperties="false" connectionStringName="appPlan" generatedNamespace="appPlan.Server.DAL"/>
</providers>
</SubSonicService>
किसी और कभी इस तरह के एक मुद्दा के पार चला गया है referening thowing के लिए बाहर बुलबुले? मैं SubSonic3.x में अपग्रेड कर सकता हूं लेकिन यह मेरा मानना है कि यह एक बहुत बड़ा उपक्रम होगा।
धन्यवाद।
मैंने कुछ वेबसाइटों को अपग्रेड किया है जो बिना किसी समस्या के 2.0 -> 3.5 -> 4.0 से सबसोनिक 2.0.3 (डब्ल्यू/कस्टमाइज़ेशन के बहुत सारे) का उपयोग करते हैं। मैंने कुछ प्रदाताओं को कभी नहीं हटाया, क्योंकि मुझे उनके साथ समस्याएं थीं जो x64 का समर्थन नहीं कर रही थीं। – Zachary
मैंने ओरेकल, माईएसक्ल और एसक्ललाइट को बाहर निकाला, सोच रहा था कि वहां एक संघर्ष हो सकता है लेकिन मुझे एक ही समस्या मिलती है। –
कॉन्फ़िगरेशन सिस्टम काफी प्रतिबिंब का उपयोग करता है। जब संपत्ति का उपयोग किया जाता है तो ऐसा लगता है कि कॉन्फ़िगर किए गए प्रदाता के कुछ कोड Jited। इस बिंदु पर रनटाइम जेनरेट कोड की जांच करता है और आपको बताता है: नहीं, इस प्रकार का एक बुरा है। रूट कारण खोजने के लिए आपको SubSonic.SqlDataProvider पर परावर्तक के साथ एक नज़र रखना होगा। –