উত্তর:
এনহাইবারনেট শব্দার্থবিজ্ঞান:
তালিকা: সত্তা সংগ্রহের আদেশ দেওয়া হয়েছে, সদৃশ অনুমোদিত। IList
কোডে একটি। নেট ব্যবহার করুন । সূচক কলামটি এনএইচবারনেটে ম্যাপ করা দরকার।
সেট করুন: অনন্য প্রতিষ্ঠানের অনর্ডারযুক্ত সংগ্রহ, নকলকে অনুমতি দেওয়া হয়নি allowed ব্যবহারের Iesi.Collection.ISet
কোডে (V4 পূর্বে NH,) অথবা System.Collections.Generic.ISet
(NH, V4 + +)। ওভাররাইড করা GetHashCode
এবং নকলের Equals
ব্যবসায়িক সংজ্ঞা নির্দেশ করা গুরুত্বপূর্ণ । অর্ডারবাই সংজ্ঞা দিয়ে বা SortedSet
ফলাফলের সাথে তুলনামূলক সংজ্ঞায়িত করে বাছাই করা যায় ।
ব্যাগ: সত্ত্বাগুলির অনর্ডার্ড তালিকা, নকলকে মঞ্জুরি দেওয়া। ICollection<T>
কোডে একটি। নেট ব্যবহার করুন । তালিকার সূচী কলামটি ম্যাপ করা হয়নি এবং এনএইচবারনেট সম্মানিত নয়।
এনএইচবারনেটে এই সমস্ত বস্তু হ'ল এই বিমূর্ত ডেটা টাইপের (এডিটি) অন্যান্য বাস্তবায়নের মতো। অন্যান্য জিনিসগুলির জন্য নামগুলি সাধারণ যে কারণে অনলাইনে সেট এবং ব্যাগগুলি খুঁজে পাওয়া কতটা কঠিন তা আমি অবাক হয়েছিলাম, তাই আমি এখানে কিছু লিঙ্ক এবং বিবরণী তালিকাভুক্ত করেছি।
আরও বিস্তারিত তথ্যের জন্য নিম্নলিখিতটি একবার দেখুন: তালিকা , সেট এবং ব্যাগ
সাধারণ নিয়মগুলি হ'ল:
তালিকাগুলি ডিফল্টরূপে অর্ডার করা হয়, আপনি যদি কোনও বিষয়টিকে এর সূচক দ্বারা বের করতে সক্ষম হতে চান বা for
লুপগুলির উপর foreach
লুপের একটি অদ্ভুত স্নেহ পেতে চান তবে এগুলি ব্যবহার করুন । লিঙ্কযুক্ত তালিকার মতো আপনার প্রয়োজন মতো এগুলি অ্যাক্সেস করার দরকার নেই । এই ADT সদৃশ অনুমতি দেয়।
দয়া করে নোট করুন! যদিও ব্রায়ানডি তার উত্তরে উল্লিখিত হিসাবে তালিকাগুলি অর্ডার করা হয়েছে, ঠিক তেমন কিছুই বলা যায় না যে আপনি যখন কোনও আদেশ দ্বারা আদেশ উল্লেখ না করে আপনি এইচকিউএল কোয়েরি কার্যকর করবেন তখন আপনি ডাটাবেস থেকে প্রত্যাশা রেখেছিলেন এমনটি হওয়া উচিত। এর কারণেই কিছু লোক পরিবর্তে সেট বা ব্যাগ ব্যবহার করতে পছন্দ করেন, যাতে এটি অর্ডার হওয়ার মায়া না দেয়। যদিও আমি এটি বলছি, বেশিরভাগ সময় তারা দৃশ্যমান ক্রমে উপস্থিত হবে, কারণ তারা তালিকায় তালিকায় যুক্ত হওয়ার সাথে সাথে এনএইচবারনেট চালিত ক্যোয়ারিতে পাওয়া যায়।
সেটগুলি ডিফল্টভাবে অর্ডার করা হয় না , আপনি কোনও সূচকের মাধ্যমে সরাসরি কোনও চলক অ্যাক্সেস করতে পারবেন না। সেটগুলি ডিফল্টরূপে উপরের তিনটির মধ্যে একমাত্র এডিটি যা এর বস্তুর স্বতন্ত্রতা বজায় রাখে । আপনার যদি ডুপ্লিকেট না রাখার প্রয়োজন হয় তবে আপনার যদি সংগ্রহ থাকে তবে এগুলি দুর্দান্ত।
ব্যাগ (অথবা Multisets ) হিসাবে আপনি উপরের লিঙ্ক থেকে দেখতে পারেন, সেট একটি প্রকার যা আছে এটা মধ্যে বস্তু অন্যান্য বস্তু প্রতিলিপি করা অনুমতি দেয়। এগুলি সাধারণত ব্যবহার করা হয় না, কারণ তালিকাগুলি ক্রমানুসারে অগ্রাহ্য করা যায় এবং তাই তাকে ব্যাগ হিসাবে ধরা হয়।
এগুলি এনহাইবারনেটে কীভাবে ব্যবহৃত হয় সে সম্পর্কিত, আপনি এখানে কোন এডিটি নির্বাচন করেন তার উপর ভিত্তি করে ডাটাবেস থেকে আলাদাভাবে কিছুই টানা হয় না, এটিই আপনি এটির জন্য আলাদা আলাদা এডিটি বেছে নিতে পারেন।
ব্যক্তিগতভাবে, আমি বেশিরভাগ জিনিসের জন্য সেট ব্যবহার করি কারণ আমার সাধারণত শিশু বিষয়গুলি অনন্য হওয়া প্রয়োজন এবং অর্ডার দেওয়া কোনও সমস্যা নয়। যদিও আমি তালিকা ব্যবহার করব যেখানে আমার কাছে একটি গ্রুপের অবজেক্ট রয়েছে যা আমি কিছু দ্বারা অর্ডার করতে চাই, উদাহরণস্বরূপ, এই আদেশটি অর্জনের জন্য আমাকে এইচকিউএল কোয়েরিতে ম্যানুয়ালি "অর্ডার বাই" সেট করতে হবে।
ওয়েল প্রাথমিক পার্থক্য হ'ল তালিকাগুলিতে তালিকার তাদের অবস্থান অনুসারে সূচিযুক্ত উপাদানগুলিকে একটি অন্তর্নিহিত ক্রম থাকে। সেটগুলি এবং ব্যাগগুলিকে সাধারণত কোনও তুলনাকারী দ্বারা "অর্ডার" করা যেতে পারে বা সেই আইটেমগুলি ডিবি থেকে বেরিয়ে আসার পরে প্রয়োগ করা হয় use ব্যক্তিগতভাবে, আমি ব্যাগগুলি কখনই ব্যবহার করি নি ... যদি আমি জানতাম যে ডেটা আমার চাওয়ার দরকার তা ক্রমানুসারে অর্ডার করা হয় আমি তালিকা ব্যবহার করি অন্যথায় আমি সেট ব্যবহার করি।
ISet
পরিবর্তে কেবল নিয়মিত ব্যবহার করতে পারি নাIesi
?