এমভিসি 4 অ্যাপ্লিকেশনগুলিতে প্রকাশের বিকল্পের সময় নতুন প্রাকম্পম্পাইলটির কী প্রভাব আছে?


86

সুতরাং আমি সম্প্রতি ভিজ্যুয়াল স্টুডিও 2012 আপডেট করার জন্য 2 আপডেট করেছি এবং দেখুন, পরের বার আমি আমার অ্যাপ্লিকেশন প্রকাশ করতে যাব (এই ক্ষেত্রে ফাইল প্রকাশের মাধ্যমে) আমি লক্ষ্য করেছি যে এখানে তিনটি নতুন বিকল্প রয়েছে:

  1. প্রকাশের আগে সমস্ত বিদ্যমান ফাইল মুছুন
  2. প্রকাশের সময় প্রাকম্পাইল (কনফিগার করার লিঙ্ক সহ)
  3. অ্যাপ_ডাটা ফোল্ডার থেকে ফাইলগুলি বাদ দিন

প্রথম এবং তৃতীয় বিকল্পগুলি বেশ স্ব-বর্ণনামূলক, তবে এমভিসির ক্ষেত্রে এটি প্রযোজ্য বলে আমি দ্বিতীয় বিকল্পটিতে কোনও ডকুমেন্টেশন পাই না। যখন আমি এটি যাচাই করি, সাইটে উত্পাদিত ফাইলগুলিতে কোনও পরিবর্তন হবে বলে মনে হয় না এবং আমি কার্য সম্পাদনে কোনও বাস্তব পরিবর্তন দেখতে পাই না।


ফাংশনের অবস্থানটি নতুন হতে পারে তবে ফাংশনটি নিজেই নয়। এমনকি এটি এমভিসি সংকলনকে বিবেচনা না করেও, এমভিসি প্রকল্পে ওয়েব ফোরামগুলি আন্তঃযোগযোগ্য।
গ্র্যান্ট থমাস

উত্তর:


85

এএসপি.এনইটি প্রিম্পম্পাইলার ব্যবহার করে আপনার এমভিসি অ্যাপে নিম্নলিখিত প্রভাব ফেলতে পারে:

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

আপনার যদি অ্যাপ_কোডে কোনও ফাইল না থাকে এবং আপনি চান যে আপনার সাইটটি আপডেটযোগ্য থাকে, তবে এটি খুব বেশি কিছু করবে বলে মনে হয় না।


7
@ এলেসিমার আপনার .cshtml ফাইলগুলি এখনও বিদ্যমান থাকবে, তবে যদি তাদের বিষয়বস্তুগুলি পূর্বনির্ধারিত হয় তবে আপনি তাদের বিষয়বস্তুগুলি "এটি পূর্ববর্তীকরণ সরঞ্জাম দ্বারা উত্পাদিত একটি চিহ্নিত ফাইল, এবং মুছে ফেলা উচিত নয়!" দিয়ে প্রতিস্থাপন করতে পারেন।
জিমি

4
এছাড়াও, পারফার লাভগুলি বেশিরভাগ প্রাথমিক সাইট লঞ্চে থাকে, যখন প্রতিটি পৃষ্ঠার জন্য সংকলকটি গতিশীলভাবে আহ্বান করা হয়। পৃষ্ঠাটি একবার হিট হয়ে গেলে (এবং সংকলিত), সেই সংকলন ফলাফলটি আপনি পূর্বনির্মাণ না করলেও পরবর্তী পৃষ্ঠা লোডগুলিতে ব্যবহৃত হবে।
জিমি

16
আপনার পৃষ্ঠাগুলি আপডেটযোগ্য না হওয়ার একটি অতিরিক্ত সুবিধা হ'ল ভিএস আপনার লাইভ সাইটে এটি তৈরি করার আগে আপনার মতামতগুলিতে টাইপ ত্রুটি খুঁজে পাবে।
ক্রিস

4
@ ক্রিস আপনার এই পরীক্ষাটি কৌশলটি পুনর্বিবেচনা করা উচিত যদি এই ধরণের ত্রুটিগুলি পূর্বনির্ধারিত বিকল্পটি বাদ দিয়ে না ফেলে।
ব্যবহারকারী 247702

4
@ অ্যান্ডারলিন্ডন: আপনার নিয়ামক পদক্ষেপের প্রকৃত রেন্ডারড প্রতিক্রিয়াটি কেবল পরীক্ষা করুন। এটি রেজারকে ডাকে এবং যদি এটি একটি ব্যতিক্রম উত্পন্ন করে, এটি আপনার পরীক্ষায় ব্যর্থ হবে। তবে আপনার দৃষ্টিভঙ্গি কোডের ক্ষেত্রে খুব হালকা হওয়া উচিত । আপনি ক্লাসে যেমন দেখতে পারেন তেমন ভিউ কোডে দুর্দান্ত-গ্রেড ইউনিট টেস্টিং করতে পারবেন না। এটি বেশ উত্তম হয় পাস বা ব্যর্থ, এবং তারপরেও, কেবল পাস করার অর্থ এটি কোনও ব্যাতিক্রম তৈরি করে না, এমনটি নয় যে এটি আসলে যা করার কথা ছিল তা করেছিল।
ক্রিস প্র্যাট

0

এটি একটি পুরানো প্রশ্ন, তবে আমি কেবল একই ধরণের সমস্যার মুখোমুখি হয়েছি এবং ভাগ করে নেওয়ার মতো কিছু মনে করি।

আমার ত্রুটির বার্তা এই পোস্টে একই। আমার প্রকল্পটি এমভিসি 5, ভিজ্যুয়াল স্টুডিও 2013 পেশাদার দিয়ে তৈরি। সংকলনের ত্রুটি: উভয় ডিএলএলে 'ASP.global_asax' টাইপটি বিদ্যমান

আমার ক্ষেত্রে, প্রাকম্পাইল বিকল্পের সাথে, বিন ফোল্ডারে একটি ফাইল, App_global.asax.dll রয়েছে এবং উপরের ত্রুটির বার্তাটি রয়েছে। প্রথমে আমি সার্ভারে App_global.asax.dll অপসারণ করছি, অ্যাপ্লিকেশন পুল পুনরায় চালু করুন, সমস্যাটি শেষ হয়ে গেছে। তারপরে আমি আরেকটি পদ্ধতির চেষ্টা করেছি, প্রাকপম্পাইলটি আনচেক করুন এবং পুনরায় প্রকাশ করুন, সার্ভারে পুনরায় প্রকাশ করুন, সমস্যাটি চলে গেছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.