ভিজ্যুয়াল স্টুডিও সি # বিবৃতি ভেঙে পড়ছে


180

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

কিছুটা গুগলিং করে, আমি আবিষ্কার করেছি যে দৃশ্যত সি ++ এর ভিএস-এ রূপরেখার বিষয়টি অনুমতি দেয় কিন্তু সি # ভিএসএলে রূপরেখা দেয় না। আমি সত্যিই কেন পাই না। এমনকি নোটপ্যাড ++ হ'ল তাই যদি আমি সি # ফর্ম্যাটটি নির্বাচন করি তবে এইগুলি ধসে পড়বে, সুতরাং ভিজুয়াল স্টুডিও কেন না তা পাই না।

এমন কোনও VS2008 অ্যাড-ইন সম্পর্কে কেউ কি জানেন যা এই আচরণটি সক্ষম করবে? বা এর জন্য কোনও ধরণের লুকানো সেটিং?

যোগ করার জন্য সম্পাদিত: অঞ্চলগুলি সন্নিবেশ করানো অবশ্যই একটি বিকল্প এবং এটি আমার কাছে ইতিমধ্যে ঘটেছিল, তবে সত্যি বলতে গেলে, এমন অঞ্চলের জিনিসগুলি আমার কাছে আবদ্ধ করা উচিত নয় যা ইতিমধ্যে বন্ধনীগুলিতে আবৃত আছে ... যদি আমি সম্পাদনা করতে যাচ্ছিলাম বিদ্যমান কোড, আমি যেহেতু উদ্বেগের আরও ভাল বিভাজন পেতে এটি কেবল রিফ্যাক্টর করব। (অঞ্চলগুলির পরিবর্তে নতুন পদ্ধতিতে "মোড়ানো")


6
বিটিডাব্লু: আমি দেখেছি যে এই দুটি শর্টকাট আমার জীবনকে খুব সহজ করে তুলেছে: টগল আউটলাইন: Ctrl + M, M সমস্ত সঙ্কুচিত করুন: Ctrl + M, O
গৌরব

2
Ctrl + M, L পুনরাবৃত্তির ধস / প্রসারকে টগল করে। অবশ্যই, এটি আপনাকে একক লাইনের সাথে ছেড়ে দিতে পারে। সেই লাইনের অভ্যন্তরে, যদিও (Ctrl + M, M) আপনাকে সুন্দরভাবে সংক্ষিপ্ত আকারের ফাইলটি রেখে দেয়।
পৃষ্ঠপোষক

2
এখানে ভিএস 2012 এর সমতুল্য প্লাগইন রয়েছে: স্ট্যাকওভারফ্লো
গ্লিম্পস

সম্পর্কিত: জেফ আতউড, ২০০৮ দ্বারা কোড ভাঁজ করার সমস্যা
নিক আলেক্সিভ

উত্তর:


267

ভিজ্যুয়াল স্টুডিও 2017 এর সাথে শুরু করে, বিবৃতিটি ভেঙে দেওয়া অন্তর্নির্মিত।

বেশ কয়েকটি এক্সটেনশন রয়েছে যা ভিএস ২০১০ সংস্করণ থেকে শুরু করে ভিএস-এর প্রাক-2017 সংস্করণগুলির জন্য এই কাজটি সম্পাদন করে:

শেষ এক্সটেনশনটি কেবল ভিএস 2015 এবং ভিএস 2017 সমর্থন করে তবে এটি সবচেয়ে শক্তিশালী।
এটি ধসে পড়া ব্লকের ভিতরে সিনট্যাক্স রঙিনকে সমর্থন করে, এটি আরও বেশি ফল্ট-সহনশীল এবং অনুকূলিত।

আপনি ডাউনলোড করার জন্য কোনও ব্রাউজার ব্যবহার করার পরে যদি এক্সটেনশনটি ইনস্টল না হয় বলে মনে হয় তবে অন্তর্নির্মিত ভিজ্যুয়াল স্টুডিও এক্সটেনশন ম্যানেজারটি ব্যবহার করে দেখুন।


এটি দুর্দান্ত, আমি এতদিন ধরে এরকম কিছু খুঁজছিলাম। আসল উত্তর হওয়া উচিত! (তবে আপনি যদি ভিএস 2010 অ এক্সপ্রেস সংস্করণ ব্যবহার করেন তবেই আমার ধারণা ...)
রিকো

এই এক্সটেনশনটি দুর্দান্ত তবে এটি হ্যান্ডলারগুলিতে (.ashx) কাজ করছে না
জেমসওয়ার্ড


3
ভিজ্যুয়াল স্টুডিওর জন্য আমাদের এই প্লাগইনটির সত্যতা হ'ল মাইন্ড বগলিং। এটি স্ট্যান্ডার্ড আচরণ হওয়া উচিত। ধার্মিকতা।
রায়ান রোডেমোয়ার

@ ওডিস, আনইনস্টল করুন এবং তারপরে Ctrl M + O ইস্যুটি ঠিক করতে এক্সটেনশনটি পুনরায় ইনস্টল করুন।
শাহেদুর রহমান

21

আমি অ্যাড-ইন সম্পর্কে সচেতন নই, তবে আপনি অঞ্চলগুলি উল্লেখ করেছেন এবং আমি এরকম কিছু করে কিছু ভুল দেখছি না ...

foreach (Item i in Items)
{
  #region something big happening here
  ...
  #endregion

  #region something big happening here too
  ...
  #endregion

  #region something big happening here also
  ...
  #endregion
}

সম্পাদনা: প্রশ্নের সম্পাদনায় এডিআইটি: আপনি ঠিক বলেছেন, সব জায়গার একগুচ্ছ অংশ বেঁধে রাখা আদর্শ নয় এবং রিফ্যাক্টরিং সম্ভবত যাওয়ার উপায়। তবে মনে হচ্ছে আপনি এমন যাদুবিদ্যার সন্ধান করছেন যা আপনার জন্য কোডটি "সংগঠিত" করবে এবং আমি মনে করি না এটি বিদ্যমান।


আইআইআরসি, আপনি কোনও ফাংশনের মধ্যে অঞ্চলগুলি নির্ধারণ করতে পারবেন না।
জোয়েল কোহোর্ন

10
তার কোড সঠিক; আপনি যেখানে এই জাতীয় অঞ্চলগুলি সংজ্ঞায়িত করতে পারবেন তা সীমাবদ্ধ নয় (যতক্ষণ না আপনি প্রারম্ভের বাইরে চলে না)
জন

3
দয়া করে মূল প্রশ্নের সম্পাদনা দেখুন; বিকাশকারীর পক্ষ থেকে ম্যানুয়াল অ্যাকশন প্রয়োজনীয় (এমনকি এক-দু'-ক্লিক অঞ্চল-মোড়ক শর্টকাট ব্যবহার করে) এটি স্বয়ংক্রিয়ভাবে সম্পন্ন হওয়ার প্রশ্নের / আকাঙ্ক্ষার উত্তর দেয় না
গ্র্যাঙ্ক

1
@ জোয়েল আমি বিশ্বাস করি আপনি VB.NET এর কথা ভাবছেন
ব্রায়ান অ্যান্ডারসন

এই থ্রেডটিতে আপনি যে সমস্ত প্লাগইন লিঙ্কযুক্ত খুঁজে পেয়েছেন সেগুলিই অঞ্চল ব্যবহারের চেয়ে ভাল। রাত এবং দিন.
গ্লিম্পস

19

আপনি ভিজ্যুয়াল স্টুডিওতে পাঠ্যের নির্দিষ্ট ব্লকগুলি ভেঙে ফেলতে পারেন, তবে আপনাকে স্বয়ংক্রিয় রূপরেখা বন্ধ করতে হবে।

আপনার কোড উইন্ডোতে ডান ক্লিক করুন এবং নির্বাচন করুন (আউটলাইনিং | আউটলাইনিং বন্ধ করুন)

তারপরে, কিছু পাঠ্য নির্বাচন করুন, ডান ক্লিক করুন এবং নির্বাচন করুন (আউটলাইনিং | নির্বাচন লুকান)

আপনি আবার স্বয়ংক্রিয় রূপরেখা চালু করলে, আপনার কাস্টম "অঞ্চলগুলি" আর সঙ্কুচিত হবে না।


3
যথেষ্ট ফর্সা। আমি এই প্রশ্নটির মাধ্যমে এই ব্লকগুলিকে স্বয়ংক্রিয় রূপরেখার সাথে যুক্ত করার উপায় খুঁজে পাওয়ার আশা করছি, কারণ এটি তাদের পক্ষে না হওয়ার জন্য সত্যিকার অর্থে তা বোঝায় না।
Grank

1
ম্যাট, আপনি স্বয়ংক্রিয় আউটলাইনিং বন্ধ না করে এটি (ভিএস 2012-এ) করতে পারেন। কেবল পাঠ্য নির্বাচন করুন, এবং রূপরেখা> নির্বাচন লুকান
নওফাল

3

ভিজুয়াল স্টুডিও 2008 ফাংশনের অভ্যন্তরবর্তী অঞ্চলগুলিকে সমর্থন করে যতক্ষণ আপনি এগুলিকে একই কোড শ্রেণিবদ্ধ স্তরে রাখেন

#region Won't work
for(int i = 0; i<Count; i++)
{
//do something
#endregion
}

for(int i=0; i<Count; i++)
{
#region Works fine
//do lots of stuff
#endregion
}

5
এটি ২০০৮ সালে নতুন নয় 2005 ২০০৫ এটিকে সমর্থন করে।
কন

3

আমাকে আলাদা কিছু বলতে দাও: টিপুন (ctrl+m,ctrl+h)বা সম্পাদনা> রূপরেখায়> লুকান নির্বাচন এটি এত কার্যকর।


1
@ মাহদী প্রশ্নটি সেই সরঞ্জামটি সম্পর্কে ছিল যা কোডের ব্লকগুলি ভেঙে দেবে। আপনি কিছু সংমিশ্রণ এবং আপনার আইএফ ক্লিক করেন, / যখন লুপগুলি ইত্যাদির জন্য সমস্ত সঙ্কুচিত হয় যাতে আপনি আপনার কোডটি সর্বোচ্চ স্তরে পড়তে পারেন। তারপরে আপনি কোডটির আরও গভীরে চলে যাবেন। আপনার সমাধানটি কার্যকর নয় কারণ আপনাকে প্রথমে সমস্ত অঞ্চল ভেঙে ফেলতে হবে এবং কোন অঞ্চলটি ঠিক তা আপনি দেখতে পাচ্ছেন না। ভবিষ্যতের জন্য শুভকামনা.
রোমান

1
আপনি প্রথমে কোনও মন্তব্য করতে পারেন তারপরে এটি লুকিয়ে রাখুন যাতে এটি আরও সহজ এবং নমনীয়
এম

2

এই বৈশিষ্ট্যটি ভিজ্যুয়াল স্টুডিও 2010 এর সি # সম্পাদকটিতে যুক্ত করা হয়েছে। এটি আসলে putোকানো হয়েছিল তা যাচাই করার উত্সটি আমি খুঁজে পাচ্ছি না, তবে আমি মনে রাখতে পারি যে এটি বিটা 1 বা অন্য কোনও কিছু থেকে পরিবর্তনের বিষয়ে কথা বলার জন্য দেব 10 টি দলের সদস্য ব্লগের একটিতে দেখেছি। সান্ত্বনা হিসাবে, এখানে একটি মাইক্রোসফ্ট মন্তব্য প্রস্তাব করছে যে তারা এটি যুক্ত করতে চেয়েছিল।


0

আমি এখানে যুক্ত করব যে ভিএস ২০১০ সালে মাইক্রোসফ্ট পরিচালিত এক্সটেনসিবিলিটি ফ্রেমওয়ার্ক (এমইএফ) ব্যবহার করে ডাব্লুপিএফ অ্যাডনারার সক্ষমতা যুক্ত করেছে, এটি আমাদের উত্স কোড সম্পাদককে আরও পাঠযোগ্য ও অ্যাক্সেসযোগ্য করে তুলতে আরও ভাল উপায়ে সংগঠিত করার অনুমতি দেবে।

উদাহরণস্বরূপ, স্কট গু পিডিসি ২০০৮ এ সংক্ষিপ্ততর মন্তব্যগুলির ভিজ্যুয়ালাইজারকে ডেমো করেছে

সুতরাং বিকাশকারীদের জন্য আরও একটি ভাল আগামীকাল অপেক্ষা করুন :)


0

কোডারশ আপনার জন্য সমস্ত কোড ব্লকগুলির রূপরেখা দেবে। নিশ্চিত না যে এটি আপনাকে ব্লকগুলি প্রসারিত / ভেঙে ফেলার অনুমতি দেয় কিনা, তবে রূপরেখাটি পরবর্তী সেরা জিনিস। আমি কোডারুশের পরিবর্তে পুনঃনির্ধারণ ব্যবহার করি যা আমি জানি যতদূর জানি ব্লক ভেঙে ফেলা হয় না :(


0

আমি ভিজ্যুয়াল স্টুডিও 2013 এর জন্য এটি পেয়েছি এবং এটি খুব সহায়ক বলে মনে করেছি। আপনি যদি code ..... with দিয়ে আপনার কোডের চারপাশে সহজ ধনুর্বন্ধনী রেখে দেন তবে এটি কাজ করে works

ভাগ করে নেওয়ার পরে আমি অন্য কেউ এই লিঙ্কটি উল্লেখ করেছেন। আমার ভোটও এই সরঞ্জামটির জন্য।

সি # ভিজ্যুয়াল স্টুডিও 2013 এর জন্য আউটলাইনিং সরঞ্জাম


0

ভিএস2017 এ আপনি কোডের একটি অংশ হাইলাইট করতে পারবেন, ডান ক্লিক করুন, আউটলাইনিং> নির্বাচন লুকান। এটি কোডটি ভেঙ্গে যাবে এবং হাইলাইট করা বিভাগটিতে একটি টগল সরবরাহ করবে।


-2

# অঞ্চল, # সমাপ্তি হ'ল স্মার্ট বিকল্প।


10
স্টাইলকপ বিধি SA1123: ডনটপ্লেসরিজিনস উইথইন উপাদানসমূহ: যখনই কোনও অঞ্চল কোনও কোড উপাদানের শরীরে স্থাপন করা হয় তখন এই নিয়মের লঙ্ঘন ঘটে। ভিজ্যুয়াল স্টুডিও সহ অনেক সম্পাদকের ক্ষেত্রে এই অঞ্চলের কোডটি লুকিয়ে রেখে ডিফল্টরূপে অঞ্চলটি ধসে পড়েছে। কোনও উপাদানটির শরীরে কোড লুকানো সাধারণত একটি খারাপ অভ্যাস, কারণ কোডটি সময়ের সাথে সাথে বজায় থাকায় এটি খারাপ সিদ্ধান্ত নিতে পারে।
স্যাম হারওয়েল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.