আমি এই থ্রেডটিতে কিছু স্পষ্টতা যুক্ত করতে চাই:
Update-Database -TargetMigration:"name_of_migration"
আপনি উপরে যা করছেন তা বলছে যে আপনি নির্দিষ্ট স্থানান্তরিত হওয়া অবধি আপনার সমস্ত মাইগ্রেশন রোলব্যাক করতে চান। সুতরাং, আপনি যদি জেট-মাইগ্রেশন ব্যবহার করেন এবং আপনি যদি দেখতে পান যে আপনার কাছে এ, বি, সি, ডি এবং ই রয়েছে, তবে এই কমান্ডটি ব্যবহার করে আপনাকে E এবং D রোলব্যাক করবে সি:
Update-Database -TargetMigration:"C"
এছাড়াও, যদি না কেউ বিপরীতে মন্তব্য করতে না পারে, আমি লক্ষ্য করেছি যে আপনি একটি মূল মান এবং সংক্ষিপ্ত-টার্গেট সুইচ ব্যবহার করতে পারেন (এইভাবে,-টার্গেটটি-টার্গেটমাইগ্রেশন হিসাবে একই)। আপনি যদি সমস্ত মাইগ্রেশন রোলব্যাক করতে এবং আবার শুরু করতে চান তবে আপনি ব্যবহার করতে পারেন:
Update-Database -Target:0
0, উপরে, এমনকি প্রথম স্থানান্তরকে রোলব্যাক করবে ( এটি একটি ধ্বংসাত্মক কমান্ড - এটি ব্যবহারের আগে আপনি কী করছেন তা নিশ্চিত হন! ) - আপনি যদি উপরের সিনট্যাক্সটি ব্যবহার করেন তবে এটি করতে পারবেন না যার নাম প্রয়োজন লক্ষ্য মাইগ্রেশন (মাইগ্রেশন প্রয়োগের আগে 0 তম স্থানান্তরের নামটি বিদ্যমান নেই!)। সেক্ষেত্রে আপনাকে 0 (অর্ডিনাল) মানটি ব্যবহার করতে হবে। তেমনিভাবে, আপনি যদি ক, খ, সি, ডি, এবং ই স্থানান্তরিত প্রয়োগ করেন (অর্ডার অনুসারে), তবে অর্ডিনাল 1 এ এর সাথে উল্লেখ করা উচিত, অর্ডিনাল 2 এর বি এবং আরও উল্লেখ করা উচিত। সুতরাং বি তে রোলব্যাক করতে আপনি যে কোনওটি ব্যবহার করতে পারেন:
Update-Database -TargetMigration:"B"
অথবা
Update-Database -TargetMigration:2
অক্টোবর 2019 সম্পাদনা করুন:
অনুরূপ প্রশ্নের সাথে সম্পর্কিত উত্তর অনুসারে , সঠিক কমান্ডটি -Target
EF কোর ১.১ এর জন্য এবং এটি -Migration
EF কোর ২.০ এর জন্য।