কেন একটি এএসপি.এনইটি 5 ক্লাস লাইব্রেরি প্রকল্প তৈরি করবেন?


98

আমি "এএসপি.এনইটি 5 ক্লাস লাইব্রেরি" (ভিএনেক্সট) সি # প্রকল্পের এএসপি.নেটের সাথে কী করার আছে তা জানার চেষ্টা করছি। কেন কেবল এই নিয়মিত সি # "ক্লাস লাইব্রেরি" প্রকল্পের চেয়ে এই টেম্পলেটটি দিয়ে একটি প্রকল্প তৈরি করবেন?

আমি নতুন বৈশিষ্ট্যগুলি পছন্দ করি, যেমন .csproj ফাইল ইত্যাদির চেয়ে প্রজেক্ট.জসন ফাইল ইত্যাদি, এটি ব্যবসায়ের যুক্তিযুক্ত স্তরের জন্য কেবল একটি প্রকল্প। একটি নতুন ওয়েবএপি এএসপি.এনইটি ওয়েব সাইট শেষ পর্যন্ত এই প্রকল্পটি উল্লেখ করবে, তবে এটি এই মুহূর্তে প্রাসঙ্গিক নয়।

এটির নাম কি খারাপ? এটিকে কি কেবল "ভিএনেক্সট ক্লাস লাইব্রেরি" বলা উচিত এবং কোনও ওয়েব অ্যাপের মতো দেখায় এমন আইকন ব্যবহার করা উচিত নয়?


যখন তারা ভাবেন যে ভাল পুরাতন শ্রেণির লাইব্রেরি টাইপ একটি বিদ্যমান প্রকল্প যুক্ত করা সম্ভব হয় তখন তাদের জন্য কোনও অনুমান আছে? এটি আমার শেষ শেষ মুহূর্তে আমার এমভিসি 5 থেকে এএসপি.নেট 5 এমভিসি 6 মাইগ্রেশনের দিকে ঝুঁকে পড়েছিল।
রেডবিএক্স

"এএসপি.এনইটি 5 ক্লাস লাইব্রেরি" এএসপি। নেট কোরের চেয়ে আলাদা কাঠামো রয়েছে তবে মূলটির নিজস্ব কোর বর্গ গ্রন্থাগার রয়েছে , পরিবর্তে এটি ব্যবহার করুন।
জয়দার

উত্তর:


100

কেন একটি এএসপি.এনইটি 5 ক্লাস লাইব্রেরি প্রকল্প তৈরি করবেন?

ক্লাস লাইব্রেরি প্রকল্পগুলির ( .csproj) ওপরে এএসপি.এনইটি 5 ক্লাস লাইব্রেরি প্রকল্পগুলির ( .kproj) এর অনেকগুলি সুবিধা রয়েছে :

  1. ASP.NET 5 বর্গ লাইব্রেরি সহজে যেমন একাধিক টার্গেটে ক্রস সংকলন প্রকল্প, সমর্থন aspnet50, aspnetcore50, net45, এবং অন্যান্য বিভিন্ন পোর্টেবল বর্গ গ্রন্থাগার বৈচিত্র। কোন টার্গেটের জন্য কোন এপিআই উপলব্ধ তা আপনাকে অবহিত করতে ইন্টেলিসেন্সের জন্য সমৃদ্ধ ভিজ্যুয়াল স্টুডিও সমর্থন অন্তর্ভুক্ত।
  2. নিউগেট প্যাকেজগুলি স্বয়ংক্রিয়ভাবে তৈরি হয়ে যায়, যা শ্রেণি পাঠাগারগুলির সাথে করানো একটি অত্যন্ত সাধারণ জিনিস।
  3. ফাইল সিস্টেম পরিবর্তন হওয়ার সাথে সাথে সলিউশন এক্সপ্লোরারকে স্বয়ংক্রিয়ভাবে রিফ্রেশ করার মতো জিনিসগুলির ক্ষেত্রে আরও ভাল উত্পাদনশীলতা। * .Csproj ফাইলে বিরোধী পরিবর্তনগুলিকে মার্জ করার চেষ্টা করার সময় উত্স নিয়ন্ত্রণে কম সংঘাত হয়।
  4. ক্রস প্ল্যাটফর্ম সংকলন করা যায় (অংশে এটি এমএসবিল্ডের উপর নির্ভর করে না)

আপনি একটি * .সিপিপ্রজ প্রকল্পকে *। কেপ্রজ প্রকল্প থেকে উল্লেখ করতে পারেন (ভিজ্যুয়াল স্টুডিও 2015 এর নতুন পূর্বরূপ দিয়ে এটি খুব সহজ করা হয়েছিল) তবে কিছু ম্যানুয়াল পদক্ষেপের সাহায্যে এটি সর্বদা সম্ভব ছিল।

নামটিতে কেন "এএসপি.নেট" রয়েছে?

নাম যতদূর যায়, এটি ইতিহাসের একটি প্রতীক যা শীঘ্রই সম্বোধন করা হবে। নতুন প্রকল্পের প্রকারটি এএসপি.এনইটি 5 অ্যাপ্লিকেশন ছাড়িয়েও কার্যকর। ভবিষ্যতের ভিজ্যুয়াল স্টুডিওতে নতুন নামগুলি দেখার প্রত্যাশা:

  • .NET কনসোল অ্যাপ্লিকেশন (ক্রস প্ল্যাটফর্ম)
  • .NET ক্লাস লাইব্রেরি (ক্রস প্ল্যাটফর্ম)

5/13/2015 আপডেট করুন

ভিজুয়াল স্টুডিও 2015 আরসি প্রকাশের সাথে সাথে আপনি আপডেট হওয়া প্রকল্পের টেম্পলেটগুলির নামগুলি দেখতে পারেন:

  • ক্লাস লাইব্রেরি (প্যাকেজ)
  • কনসোল অ্যাপ্লিকেশন (প্যাকেজ)

এগুলি project.jsonপ্রকল্পটি নির্মাণ, চালনা, এবং প্যাকেজ (একটি নুগেট প্যাকেজের মধ্যে) ফাইল এবং .NET এক্সিকিউশন এনভায়রনমেন্ট (ডিএনএক্স) ব্যবহার করে ।

এই প্রকল্পের টেমপ্লেটগুলি "ওয়েব" নোডের অধীনে নতুন প্রকল্প সংলাপে প্রদর্শিত হতে থাকে, তবে এখন মূল "ভিজ্যুয়াল সি #" নোডেও প্রদর্শিত হবে।

ভিএস ২০১৫ আরসি ক্লাস লিব / কনসোল অ্যাপ টেম্পলেট


আপনি # 2-তে প্রসারিত করতে পারেন - আপনার অর্থ কী ইন্টেলিসেন্সটি একটি এআইপি প্রস্তাব দেয় এবং তারপরে আপনার জন্য নুগেট প্যাকেজটি ডাউনলোড করে? আমি জিকিউরি টাইপ করেছি এবং এটি আমাকে দেবে?
সাইমন_উইভার

4
@ সিমন_উইভার আমার অর্থ যে নিয়মিত ক্লাস লাইব্রেরি প্রকল্পটি কেবল একটি ডিএলএল এবং পিডিবি তৈরি করে, নতুনটি একটি এনইপকেজি (নিউগেট প্যাকেজ) উত্পন্ন করে যা nuget.org এ আপলোড করা যায়।
আইলন

4
তারপরে .kproj এর নাম পরিবর্তন করে .xproj করা হয়েছে
বোরিস

10

এটি একটি আকর্ষণীয় পর্যবেক্ষণ, বর্তমান টেমপ্লেটটি ASP.NET 5 রানটাইমের সাথে সামঞ্জস্যপূর্ণ একটি শ্রেণিকালীন গ্রন্থাগার তৈরি করবে। আপনি এটি সাধারণ সি # শ্রেণির পাঠাগার থেকে পাবেন না।

আমি এই নকশা প্রশ্নটি ট্র্যাক করার জন্য নিম্নলিখিত সমস্যাটি দায়ের করেছি - https://github.com/aspnet/Home/issues/281


আমি আপনার সমস্যাটি দেখুন। স্পষ্টতই "এএসপি.নেট 5 কনসোল অ্যাপ্লিকেশন" সহ একই নামকরণের ইস্যু। হতে পারে "vNext কনসোল অ্যাপ্লিকেশন" বলা উচিত, অন্যথায় ডেভগুলি এএসপি.এনইটি ওয়েবসাইটে কোনও ধরণের কনসোল অ্যাপ্লিকেশন দিয়ে বিভ্রান্ত করতে পারে। সম্ভবত টেমপ্লেটগুলির অবস্থানটি "ভিজ্যুয়াল সি # -> ওয়েব" থেকে "ভিজ্যুয়াল সি # -> vNext"
এমকেজ

গিথুব ইস্যুটি বন্ধ হয়ে গেছে। আরও ভাল প্রকল্পের নাম - ধন্যবাদ: github.com/aspnet/Home/issues/281
mkaj

3

আমি যে সুবিধাটি বুঝতে পারি তা থেকে এএসপি.এনইটি 5 ক্লাস লাইব্রেরি প্রকল্পের শেষ পণ্যটি একটি নিউগেট প্যাকেজ (কেবলমাত্র .dll সমাবেশের চেয়ে বেশি))

আপনি ভিজ্যুয়াল স্টুডিও 2015-তে প্রকল্পটিতে ডান ক্লিক করে এবং "প্রকাশ করুন ..." বিকল্পটি বেছে নিয়ে নুগেট প্যাকেজ তৈরি করতে পারেন। অথবা আপনি কমান্ড লাইনে "কেপিএম প্যাক" ব্যবহার করতে পারেন।

এছাড়াও, আপনার এএসপি.নেট 5 কোর রানটাইম ব্যবহার করার ক্ষমতা রয়েছে যাতে আপনার গ্রন্থাগারটি ক্রস-প্ল্যাটফর্ম চালাতে পারে।


এর খারাপ নামকরণ হয়েছে? এএসপি.এনইটির সাথে কিছু করার নেই?
এমকাজ

4
এএসপি.নেট 5 এর অন্যতম প্রধান লক্ষ্য হ'ল এটি ক্রস প্ল্যাটফর্ম চালানোর অনুমতি দেয়। কিছু জিজ্ঞাসা করেছেন "এটি কি বলা উচিত নয়? পরিবর্তে নেট কোর?" কমপক্ষে আপাতত মাইক্রোসফ্টের মাল্টি-প্ল্যাটফর্মের পদ্ধতিটি কেবল ওয়েব (এবং কনসোল অ্যাপ্লিকেশন) সম্পর্কে রয়েছে এবং জাভার মতো ডেস্কটপ বিকাশ সমর্থন করে না। এটি ওয়েব সম্পর্কে জোর দেওয়ার জন্য তারা এগুলি সমস্ত "এএসপি.নেট 5" নামে ব্র্যান্ড করছে। যদি আপনি এমন একটি লাইব্রেরি তৈরি করতে চান যা ক্রস প্ল্যাটফর্ম চালায় তবে এটি ASP.NET 5 শ্রেণির পাঠাগার হওয়া উচিত।
টমাস কাদলেক

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