मैं इकाई की रूपरेखा 4 का उपयोग कर रहा एक सरल अनुप्रयोग के लिए और निम्नलिखित कनेक्शन स्ट्रिंग में मेरी कनेक्शन साख बेक करना चाहते हैं:कनेक्शन स्ट्रिंग में ampersand कैसे शामिल करें?
<connectionStrings>
<add name="MyEntities"
connectionString="metadata=res://*/MyDataModel.csdl|res://*/MyDataModel.ssdl|res://*/MyDataModel.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhost\DEV;Initial Catalog=MyDB;UserId=myUser;Password=jack&jill;MultipleActiveResultSets=True""
providerName="System.Data.EntityClient" />
</connectionStrings>
हालांकि, पासवर्ड (जो मैं नहीं बदल सकते) एक ampersand में शामिल है। ASP.NET फेंकता है: Configuration Error: An error occurred while parsing EntityName. Line XX, position YYY.
अगर मैं &
साथ पासवर्ड में एम्परसेंड की जगह, मैं एक SqlException: Login failed for user 'myUser'.
आम तौर पर इस चाल काम करता है, लेकिन मेरा अनुमान है कि ऐसा इसलिए है क्योंकि यह तकनीकी रूप से एक कनेक्शन के अंदर एक कनेक्शन स्ट्रिंग है कुछ विफल हो रहा है स्ट्रिंग।
मुझे यहां क्या करना चाहिए? मेरी कक्षाओं के अधिकांश कोड की तरह शामिल हैं:
using (var context = new MyEntities()) {
// do work
}
अद्यतन: ऐसा लगता है कि साख मैं उपयोग कर रहा हूँ एक डोमेन खाते हैं, तो क्या मैं वास्तव में जरूरत है एक के बजाय कनेक्शन स्ट्रिंग में Integrated Security=True
है पारण शब्द।
स्वीकृत उत्तर में दर्शाए गए एम्पर्सेंड को एन्कोड करना ठीक काम करना चाहिए, हालांकि मैंने इसका परीक्षण नहीं किया है।
मैंने पहले ही कोशिश की है, जैसा कि मेरे प्रश्न में उल्लेख किया गया है। ऐसा लगता है कि गलत पासवर्ड एंटिटी फ्रेमवर्क के साथ भेजा जाता है। – user403830
यह वास्तव में आपको काम पर लाने के लिए आवश्यक होना चाहिए। – hunter
इसके अलावा, आपने अपने सर्वर के बाहर अपने कनेक्शनस्ट्रिंग में क्रेडेंशियल्स का उपयोग करके उस SQL सर्वर इंस्टेंस में लॉगिंग करने का प्रयास किया है – hunter