আমরা -repository
ডাটাবেস থেকে ডেটা পুনরুদ্ধার করতে প্রত্যয়যুক্ত পৃথক শ্রেণীর একটি গুচ্ছ ব্যবহার করছি ; প্রতিটি টেবিলের জন্য তার নিজস্ব ভাণ্ডার।
উদাহরণস্বরূপ আমাদের কাছে এমন একটি customerrepository
শ্রেণি রয়েছে যা গ্রাহকদের পুনরুদ্ধার করার জন্য vacancyrepository
সমস্ত ধরণের পদ্ধতি এবং শূন্যপদগুলি পুনরুদ্ধার করার জন্য সমস্ত ধরণের পদ্ধতি রয়েছে।
কাজ করার এই পদ্ধতি সম্পর্কে আমার দুটি প্রশ্ন রয়েছে:
একাধিক টেবিল বিস্তৃত ডেটা পাওয়ার বিষয়ে কীভাবে? উদাহরণস্বরূপ আমার কাছে একটি স্ক্রিন রয়েছে যা এমন সমস্ত গ্রাহককে দেখায় যারা এখনও শূন্যপদ তৈরি করেনি। এর কোনও
customerrepository
পদ্ধতি ব্যবহার করতে পারেvacancyrespository
, বা উভয় ভান্ডারগুলি কী ফলাফল দিতে পারে এবং হায়ারার্কিতে উচ্চতর শ্রেণি আছে (আসুন এটির নাম দিনdataservice
) যা উভয় সংগ্রহস্থলের ফলাফল পেয়ে তাদের 1 টি ফলাফলের সাথে সংযুক্ত করে?এই ধরনের একটি সংগ্রহস্থল হ্যান্ডেল করতে পারে কত যুক্তি?
আমি মনে করি কেবল সক্রিয় রেকর্ডগুলি পুনরুদ্ধার করতে কোনও সংগ্রহস্থলে 'যেখানে সক্রিয় == সত্য' প্রয়োগ করা ঠিক আছে, বা এমনকি এই সাধারণ যুক্তিটি কি শ্রেণিবদ্ধের উচ্চতর শ্রেণি দ্বারা পরিচালিত হওয়া উচিত (আসুন এটির নামকরণ করবdataservice
)?
আমি এখন যে উদাহরণটি চালিয়ে যাচ্ছিলাম তা হ'ল:
আমাদের একটি প্রশ্নের তালিকা রয়েছে, যার মধ্যে এক বা একাধিক প্রশ্ন রয়েছে।
প্রশ্নের একটি ফলাফল হতে পারে, যা একটি পৃথক টেবিলের মধ্যে রয়েছে।
সুতরাং আপনি যখন প্রশ্নের তালিকার মোট ফলাফলটি পুনরুদ্ধার করতে চান, আপনাকে questionlist
সারণী, প্রশ্ন সারণী এবং সারণী থেকে ডেটা একত্রিত করতে হবে questionstatus
।
এই মুহূর্তে আমাদের কাছে এই টেবিলগুলির জন্য 3 টি পৃথক সংগ্রহস্থল রয়েছে।
যদি আমি এটি জিজ্ঞাসা করি questionlistrepository
যে এটি 12 নম্বর তালিকার মোট ফলাফল কী, তবে এটি অন্য দুটি সংগ্রহস্থল থেকে ডেটা পেতে হবে এবং তাই এতে কিছু যুক্তি থাকতে পারে, এটি কি অনুমোদিত?
বা এমন কোনও আছে questionlistdataservice
যা জানে কোন সংগ্রহস্থলগুলি ব্যবহার করতে হবে?
আরও একটি জিনিস: আমাদের সংগ্রহস্থলগুলির ফলাফল হতে পারে IQueryable
যাতে একটি কলিং পরিষেবা সহজেই ফলাফলগুলিকে একত্রিত করতে পারে তবে কীভাবে যখন এটি হয় না, তবে আমি মনে করি না যে তিনটি টেবিলের সমস্ত বিষয়বস্তু থেকে সমস্ত তথ্য উদ্ধার করা ভাল ধারণা don't তথ্যশালা.