আমি এমন একটি প্রকল্পে কাজ করছি যা একটি সমাবেশ তৈরি করে। আমি সবেমাত্র লক্ষ্য করেছি যে একটি অতিরিক্ত সমাবেশ * .XMLSerializer.dll তৈরি হচ্ছে। কেন এই ফাইলটি স্বয়ংক্রিয়ভাবে উত্পন্ন হয় এবং এর জন্য কী ব্যবহার করা হয়?
আমি এমন একটি প্রকল্পে কাজ করছি যা একটি সমাবেশ তৈরি করে। আমি সবেমাত্র লক্ষ্য করেছি যে একটি অতিরিক্ত সমাবেশ * .XMLSerializer.dll তৈরি হচ্ছে। কেন এই ফাইলটি স্বয়ংক্রিয়ভাবে উত্পন্ন হয় এবং এর জন্য কী ব্যবহার করা হয়?
উত্তর:
ইন .NET প্রয়োগ, XmlSerializer একটি অস্থায়ী সমাবেশ serializing জন্য / (কর্মক্ষমতা কারণে) আপনার ক্লাস deserializing জেনারেট করে। এটি হয় ফ্লাইতে উত্পন্ন করা যেতে পারে (তবে এটি প্রতিটি প্রয়োগে সময় নেয়), অথবা এটি সংকলনের সময় প্রিজারেটেড করা যেতে পারে এবং আপনি যে সমাবেশটি সম্পর্কে জিজ্ঞাসা করছেন সেটিতে এটি সংরক্ষণ করা যেতে পারে।
আপনি প্রকল্পের বিকল্পগুলিতে এই আচরণ পরিবর্তন করতে পারেন (ট্যাব কম্পাইল -> উন্নত কম্পাইল বিকল্প -> ধারাবাহিকতাতে সমাহারগুলি জেনারেট করুন , অটো বা উপর যথাক্রমে)। প্রজেক্ট ফাইলে সম্পর্কিত উপাদানটি হ'ল জেনারেটসরিয়ালাইজেশন অ্যাসেমব্লিজগুলি , উদাহরণস্বরূপ <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
,।
Auto
, তবে কেবলমাত্র একটি সিরিয়ালাইজেশন ডিএলএল তৈরি করেছে।
**Generate Serialization Assemblies** Specifies whether the compiler will use the XML Serializer Generator Tool (Sgen.exe) to create XML serialization assemblies. Serialization assemblies can improve the startup performance of XmlSerializer if you have used that class to serialize types in your code. By default, this option is set to Auto, which specifies that serialization assemblies be generated only if you have used XmlSerializer to encode types in your code to XML.
msdn.microsoft.com/en-us/library/kb4wyys2.aspx
অবগতির জন্য। এক্সএমএসরিশালাইজার.ডিলকে স্বয়ংক্রিয়ভাবে উত্পাদিত হওয়া বন্ধ করার সঠিক পদক্ষেপগুলি হ'ল:
আমি মনে করি এটি পারফরম্যান্সের কারণে XML সিরিয়ালাইজারগুলির জেআইটি (ঠিক সময়ে সময়ে) সংকলন।
RegexOptions.Compiled বিকল্পটি চালু করে আপনি RegEx উদাহরণগুলির সাথে একই জিনিসটি পান।
আমি নেই। নেট সিএলআর বিশেষজ্ঞ, সুনির্দিষ্ট প্রযুক্তিগত বিশদ না থাকার জন্য দুঃখিত।
*.XmlSerializers.dll
Sgen.exe [এক্সএমএল সিরিয়ালাইজার জেনারেটর সরঞ্জাম] ব্যবহার করে তৈরি করা হয়েছে
এমএসডিএন-তে Sgen.exe দেখুন
সাধারণত Sgen.exe
প্রকল্পগুলির পোস্ট বিল্ড ইভেন্টগুলিতে ব্যবহৃত হয়। আপনার প্রকল্পে পোস্ট বিল্ড ইভেন্ট রয়েছে কিনা তা দেখুন*.XmlSerializers.dll
প্রকল্পটি কেবল ওয়েব অ্যাপ্লিকেশনগুলির জন্য প্রজেক্টটি তৈরি করে X অন্যান্য অ্যাপ্লিকেশনগুলির জন্য আপনাকে আলাদা আলাদাভাবে চালিত করতে হবে।