के भीतर SqlServer.Types/स्थानिक प्रकारों का उपयोग कैसे करें हमारे वर्ग पुस्तकालयों में से एक माइक्रोसॉफ्ट स्थानिक प्रकारों जैसे डीबीजीओोग्राफी का उपयोग करता है। जब एसक्यूएल सर्वर और दृश्य स्टूडियो के पुराने संस्करणों के बिना एक साफ मशीन पर हमारे आवेदन चल रहा है, यह अपवाद प्राप्त करें:एएसपी.NET कोर 1.0 एप्लिकेशन
स्थानिक प्रकार और कार्यों इस प्रदाता लिए उपलब्ध नहीं हैं, क्योंकि विधानसभा 'Microsoft.SqlServer.Types' संस्करण 10 या उच्चतर नहीं मिला।
को तैनात करने के लिए:
Install-Package Microsoft.SqlServer.Types
स्थापित करने के बाद, nuget पैकेज प्रत्येक परियोजना प्रकार से DLLs को संदर्भित करने के निर्देश देता है:
समाधान इस nuget पैकेज स्थापित करने के लिए जाहिरा तौर पर है एक ऐसा एप्लिकेशन जो उस मशीन पर स्थानिक डेटा प्रकारों का उपयोग करता है जिसमें 'SQL सर्वर के लिए सिस्टम CLR प्रकार' स्थापित नहीं है, आपको मूल असेंबली SqlServerSpatial110.dll को भी तैनात करने की आवश्यकता है।
इस असेंबली के x86 (32 बिट) और x64 (64 बिट) संस्करण दोनों को आपके प्रोजेक्ट में SqlServerTypes \ x86 और SqlServerTypes \ x64 उपनिर्देशिका के तहत जोड़ा गया है। C++ रनटाइम स्थापित नहीं होने पर मूल असेंबली msvcr100.dll भी शामिल है।
रनटाइम पर इन असेंबली में से एक को सही लोड करने के लिए आपको कोड जोड़ने की आवश्यकता है (वर्तमान आर्किटेक्चर के आधार पर)।
ASP.NET अनुप्रयोगों ASP.NET अनुप्रयोगों के लिए, Global.asax.cs में Application_Start विधि करने के लिए कोड की निम्न पंक्ति जोड़ें: SqlServerTypes.Utilities.LoadNativeAssemblies (Server.MapPath ("~/bin")) ;
डेस्कटॉप अनुप्रयोगों डेस्कटॉप अनुप्रयोगों के लिए, चलाने के लिए कोड की निम्न पंक्ति जोड़ने के किसी भी स्थानिक संचालन प्रदर्शन कर रहे हैं इससे पहले कि: SqlServerTypes.Utilities.LoadNativeAssemblies (AppDomain.CurrentDomain.BaseDirectory);
nuget पैकेज परियोजना स्थल उत्तर नहीं देता है, तो मुझे यकीन है कि यह सबसे अच्छा तरीका 2016
मेरे समस्या है में अब उपयोग करने के लिए है नहीं कर रहा हूँ, मैं समझ नहीं कैसे से LoadNativeAssemblies कॉल करने के लिए एक एएसपी.नेट कोर 1.0 आवेदन। हम पूर्ण ढांचे (net461) का उपयोग कर रहे हैं और कोर फ्रेमवर्क नहीं।
public class Startup
{
public Startup(IHostingEnvironment env)
{
...
SqlServerTypes.Utilities.LoadNativeAssemblies(env.WebRootPath);
...
}
}
सबसे अच्छा तरीका है SqlServer.Types एक ASP.NET 1.0 आवेदन के भीतर dll फ़ाइलों को शामिल करने क्या है?
संबंधित प्रश्न here और here स्टैक ओवरव्लो पर।
बहुत धन्यवाद।
public class Startup
{
public Startup(IHostingEnvironment env)
{
...
SqlServerTypes.Utilities.LoadNativeAssemblies(env.WebRootPath + @"path to the project that contains the SQLServerTypes folder");
...
}
}
मैं देखा कि IHostingEnvironment.WebRootPath
रास्ता है कि मेरी समाधान सेटअप में हालांकि wwwroot की ओर संकेत करता रहा, कि फ़ोल्डर के भीतर कई परियोजनाओं है तो बस जो करने के लिए परियोजना यह कह देता है:
क्या आपको इसके साथ कहीं भी मिला? –
कोई प्रगति नहीं है। मुझे अभी भी इसे समझने की उम्मीद है ... – Ender2050
जिज्ञासा से, क्या होता है जब आप ' टी उस लाइन को शामिल नहीं है? मेरे .NET Framework प्रोजेक्ट में, मुझे मैन्युअल रूप से असेंबली लोड करने की आवश्यकता नहीं थी और यह ठीक काम करता था। मैंने इसे अन्य संगतता समस्याओं के कारण अभी तक .NET कोर पर चलाने में कामयाब नहीं रहा है। –