এএসপি.নেট ওয়েব কোডফিগ: কনফিগারসোর্স বনাম ফাইল বৈশিষ্ট্য


187

একটি মধ্যে web.configএকটি ASP.NET-অ্যাপ্লিকেশনে -file কনফিগ কিছু অংশ, মত appSettingsএবং connectionStrings, গুণাবলী সমর্থন fileএবং configSource

file-অ্যাট্রিবিউট এবং -অ্যাট্রিবিউট ব্যবহারের মধ্যে পার্থক্য কী configSource? কখন কোন বৈশিষ্ট্যটি ব্যবহার করা উচিত এবং আপনি উভয়ই ব্যবহার করতে পারেন?

<?xml version="1.0"?>
<configuration>
  <appSettings file="AppSettings.config">
  </appSettings>
  <connectionStrings configSource="ConnectionStrings.config">      
  </connectionStrings>
  <!-- ... -->
</configuration>

উত্তর:


299

file গুণ

  • বাহ্যিক ফাইলে সম্পর্কিত কাস্টম অ্যাপ্লিকেশন কনফিগারেশন সেটিংস থাকা সম্পর্কিত একটি পাথ নির্দিষ্ট করে
  • নির্দিষ্ট appSettingsঅধ্যায়
  • হবে একত্রীকরণ (এবং ওভাররাইড) .config ফাইলে সেটিংস
  • নির্দিষ্ট ফাইলটি সংশোধন করার সময় ওয়েব অ্যাপ্লিকেশনটিকে পুনরায় চালু করার কারণ হবে না
  • http://msdn.microsoft.com/en-US/library/ms228154(v=vs.100).aspx
  • কনফিগারেশন ব্যবহার করে । অ্যাপসেটেটিংসেটিংসযোগ এপিআই সব সেটিংস প্রধান মধ্যে মিশে গিয়ে তৈরি ফিরে হচ্ছে পরিণাম ডেকে আনবে .configএকটি উপর কনফিগারেশন । কল সংরক্ষণ করুন।
  • নেট 1.1
  • ফাইল উপস্থিত না থাকলে ব্যতিক্রম ছোঁড়া হয় না।

configSource গুণ

fileঅ্যাট্রিবিউট কাস্টম সেটিংস ধারণকারী মত web.config ফাইলের appSettings এন্ট্রি না একটি বহিস্থিত ফাইল নির্দিষ্ট করে। এদিকে, configSourceবৈশিষ্ট্যে নির্দিষ্ট করা বাহ্যিক ফাইলটিতে আপনি যে অংশটির জন্য কনফিগার সোর্স ঘোষণা করেছেন সেটির জন্য সেটিংস রয়েছে। উদাহরণস্বরূপ, যদি আপনি configSourceপৃষ্ঠাগুলি বিভাগের বৈশিষ্ট্যটি ব্যবহার করেন তবে বাহ্যিক ফাইলটিতে পৃষ্ঠা বিভাগের জন্য সেটিংস থাকবে।

fileবৈশিষ্ট্যে নির্দিষ্ট করা বাহ্যিক কনফিগারেশনে ঘোষিত কাস্টম সেটিংস ফাইলের appSettings বিভাগে সেটিংসের সাথে একত্রীকরণ করা হবে web.config। এরই মধ্যে , এটি মার্জ করা সমর্থন configSource করে না , এর অর্থ এটি হ'ল আপনাকে পুরো বিভাগের সেটিংসটি বাহ্যিক ফাইলে সরিয়ে নিতে হবে।

http://www.codeproject.com/Messages/1463547/Re-difference-between-configSource-and-file-attrib.aspx


10
এছাড়াও, "ফাইল" বৈশিষ্ট্য আপনাকে তাত্ক্ষণিক ডিরেক্টরি গাছের বাইরে ফাইলগুলি নির্দিষ্ট করতে দেয় যা বিভিন্ন সাইটের মধ্যে সাধারণ সেটিংস ভাগ করার জন্য গুরুত্বপূর্ণ। দুর্ভাগ্যক্রমে, "কনফিগারসোর্স" বৈশিষ্ট্যটি আপনাকে কারেন্ট গাছের মধ্যে থাকা ফাইলগুলিতে সীমাবদ্ধ করে, তাই ভাগ করা সেটিংসের জন্য আপনাকে আইআইএসে একটি ভার্চুয়াল ডিরেক্টরি নির্দিষ্ট করতে হবে।
এড গ্রাহাম

6
আমার উপরের মন্তব্যটি সম্পূর্ণ সঠিক ছিল না, এবং আমি সম্পাদনা করার জন্য কিছুটা নির্বিচারে পাঁচ মিনিটের উইন্ডোটি দৃশ্যত মিস করেছি! "কনফিগারসোর্স" ফাইলগুলিকে তাত্ক্ষণিক ডিরেক্টরি গাছের বাইরে থাকতে অনুমতি দেওয়ার জন্য আপনি আইআইএসে একটি ভার্চুয়াল ডিরেক্টরি সেট করতে পারবেন না। সুতরাং যে সত্যিই বেশ সীমাবদ্ধ। আমি এটি একটি জংশন পয়েন্ট (বা এনটিএফএস হার্ড লিঙ্ক) ব্যবহার করে সমাধান করেছি তবে এটি ঠিক সুন্দর নয় ...
এড গ্রাহাম

1
WAO! গ্রেট উত্তর ... এই সত্যিই আমাকে সাহায্য: will not cause web application to restart when modifying the specified file। কাস্টম বিভাগের জন্য বাহ্যিক ফাইলে যে কোনও সেটিংস সংশোধন করার সময় আমার আর অ্যাপ্লিকেশনটি পুনরায় চালু করার দরকার নেই এবং তাই যাওয়ার উপায়টি configSource। মজার বিষয় হ'ল আমি ব্যবহার করছিলাম fileএবং বিভিন্ন বিভাগ কাজ করছিল। fileএছাড়াও অন্যান্য বিভাগের জন্য কাজ করে appSettingsতবে উত্তরে উত্তমভাবে ব্যাখ্যা করা আছে got গোটাগুলি রয়েছে।
লেনিয়েল ম্যাককাফেরি

4
আমি configSource তালিকায় যোগ করতে চাই: It must refer to a file in the same directory or in a subdirectory as the configuration file.। এবং এছাড়াও ফাইল লিস্টে: It can reside outside the directory of the configuration file itself.
ফ্র্যাঙ্কোমার্স

2
অ্যাপসেটিং উপাদানটির জন্য আপডেট লিংক - ডকস.মাইক্রোসফট
জারোড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.