আপনার সম্ভবত ইতিমধ্যে এটি কাজ করছে তবে এটি ভবিষ্যতে অন্য কাউকে সহায়তা করতে পারে। আমি সম্প্রতি এই প্রশ্নটি পেরিয়ে এসেছি এবং এটি আমাকে সঠিক দিকে এগিয়ে নিয়ে গেছে এবং শেষ পর্যন্ত একটি সমাধানের দিকে নিয়ে যায়।
এর আর একটি সম্ভাব্য সমাধান হ'ল এমএসবিল্ড সংস্করণটিকে টার্গেট করতে আপনার প্রকল্প ফাইলগুলি ম্যানুয়ালি আপডেট করে আপনি চান যে আপনার প্রকল্পগুলি তৈরি করা হোক।
আমি সম্প্রতি একটি টিমসিটি বিল্ড সার্ভার আপডেটের মধ্য দিয়ে গিয়েছি এবং এরই মধ্যে আমি মাইক্রোসফ্ট বিল্ড সরঞ্জাম 2015 ইনস্টল করেছি। আমি ভেবেছিলাম বিল্ড সার্ভারে আমার সবকিছু ঠিক আছে, আমি সি # 6.0 লক্ষ্য করে আমার সমাধান পেয়েছি, এবং আমার প্রতিটি প্রকল্প। নেট 4.6.1 লক্ষ্য করে ছিল। আপনার মত, সি # 6.0-নির্দিষ্ট কোড সহ সমস্ত কিছু আমার স্থানীয় পরিবেশে ঠিক সূক্ষ্মভাবে নির্মিত, তবে আমার টিমসিটি বিল্ড সার্ভার এগুলির কোনও পছন্দ করেনি।
অন্যদের দ্বারা উল্লিখিত হিসাবে, আমি মাইক্রোসফ্ট. নেট.কম্পিলারদের নুগেট প্যাকেজটি ব্যবহার করার চেষ্টা করেছি। এটির সর্বশেষতম সংস্করণটি বিল্ডটি আমার বিল্ড সার্ভারে কাজ করার অনুমতি দিয়েছে, তবে এটি আমার কোড স্থানীয়ভাবে প্রকাশ করতে দেয় না (আমার প্রয়োজন)। সেই নুগেট প্যাকেজের পূর্ববর্তী সংস্করণগুলি আমাকে প্রকাশ করতে দেবে, তবে বিল্ডটি কাজ করবে না।
আমি যেটা করতে পেরেছিলাম তা হল শেষ পর্যন্ত আমার সমাধানের প্রতিটি প্রকল্পের ফাইলটি নির্দিষ্ট করে এমএসবিল্ড সংস্করণকে লক্ষ্য করে যাতে সি # 6.0 কোড হ্যান্ডেল করতে পারে target আমার প্রতিটি প্রকল্পের ফাইলগুলিতে আমি নিম্নলিখিত লাইনের অনুরূপ একটি লাইন পেয়েছি:
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
সেই লাইনের মূল উপাদানটি এর সরঞ্জামসংশ্লিষ্ট অংশ হিসাবে রয়েছে। নিম্নলিখিতটি পড়তে আমি কেবল আমার প্রকল্প ফাইলগুলিতে এই লাইনটি পরিবর্তন করেছি:
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
এখানে পার্থক্যটি হ'ল আমি সংস্করণ ১৪ টি লক্ষ্যবস্তু করেছিলাম, ৪ নয় Version সংস্করণ ১৪.০ বিল্ড সরঞ্জামগুলির সাথে মিল 2015 এই পরিবর্তন করে আমার টিমসিটি বিল্ড সার্ভারটি সঠিক এমএসবিল্ড সংস্করণ ব্যবহার করেছে এবং আমার সি # 6.0 কোডটি তৈরি করতে সক্ষম হয়েছিল।
আমি এটিকে 4.6.1 ব্যবহার করার জন্য এর টার্গেটফ্রেমওয়ার্ক ভার্সন এক্সএমএল নোডটি ম্যানুয়ালি আপডেট করতে হয়েছিল কারণ ভিএস2015 সঠিকভাবে কিছু করছে না এবং আমার স্থানীয় বিল্ডকে গণ্ডগোল করেছে, তবে এটি এখানে প্রাসঙ্গিক নয়।
দয়া করে, আমি ভুল হলে কেউ আমাকে সংশোধন করেন, তবে কেবলমাত্র রেফারেন্সের জন্য, আমি মনে করি সংস্করণ নম্বরগুলি এরকম কিছু হয়:
4.0 = ভিএস2012
12.0 = ভিএস2013
14.0 = ভিএস2015
15.0 = ভিএস2017
আমি বিশ্বাস করি আপনি যদি নেট নেট 4.7 ব্যবহার করতে চান তবে আপনার বিল্ড সরঞ্জাম 2017 ইনস্টল করতে হবে এবং আপনার প্রকল্পগুলি 14.0 এর পরিবর্তে 15.0 টার্গেট করতে হবে, তবে আমি এটি যাচাই করে নি।