වෙබ් අඩවිය යනු ඔබ IIS වැනි ASP.NET වෙබ් සේවාදායකයකට යෙදවීමයි. ලිපිගොනු සහ ෆෝල්ඩර පොකුරක් පමණි. ඔබව දෘශ්ය චිත්රාගාරයට සම්බන්ධ කරන කිසිවක් වෙබ් අඩවියේ නොමැත (ව්යාපෘති ගොනුවක් නොමැත). කේත-උත්පාදනය සහ වෙබ් පිටු සම්පාදනය කිරීම (.aspx, .ascx, .master වැනි) ක්රියාකාරී වේලාවේදී ගතිකව සිදු කෙරෙන අතර මෙම ලිපිගොනු වල වෙනස්කම් රාමුව මගින් හඳුනාගෙන ස්වයංක්රීයව නැවත සම්පාදනය කරනු ලැබේ. ඔබට විශේෂ App_Code ෆෝල්ඩරයේ පිටු අතර බෙදා ගැනීමට අවශ්ය කේතයක් තැබිය හැකිය , නැතහොත් ඔබට එය පූර්ව සම්පාදනය කර එකලස් කිරීම බින් ෆෝල්ඩරයේ තැබිය හැකිය.
වෙබ් යෙදුම විශේෂ දෘශ්ය ස්ටුඩියෝ ව්යාපෘතියකි. වෙබ් අඩවි සමඟ ඇති ප්රධාන වෙනස නම්, ඔබ ව්යාපෘතිය ගොඩනඟන විට සියලුම කේත ලිපිගොනු එකලස් කිරීමකට සම්පාදනය කර ඇති අතර එය බින් නාමාවලියෙහි තැන්පත් කර ඇත. ඔබ කේත ගොනු වෙබ් සේවාදායකයට යොදවන්නේ නැත. හවුල් කේත ලිපිගොනු සඳහා විශේෂ ෆෝල්ඩරයක් වෙනුවට ඔබට පන්ති පුස්තකාලයේ මෙන් ඕනෑම තැනක තැබිය හැකිය. ව්යාපෘති සහ කේත ගොනු වැනි යෙදවීමට අදහස් නොකරන ලිපිගොනු වෙබ් යෙදුම්වල අඩංගු බැවින්, වෙබ් අඩවියක් නිශ්චිත ස්ථානයකට ප්රතිදානය කිරීම සඳහා විෂුවල් ස්ටුඩියෝ හි ප්රකාශන විධානයක් ඇත.
App_Code එදිරිව බින්
හවුල් කේත ගොනු යෙදවීම සාමාන්යයෙන් නරක අදහසකි, නමුත් එයින් අදහස් කරන්නේ ඔබ වෙබ් යෙදුම තෝරා ගත යුතු බවයි. වෙබ් අඩවිය සඳහා සියලු කේතයන් දරණ පන්ති පුස්තකාල ව්යාපෘතියක් සඳහන් කරන වෙබ් අඩවියක් ඔබට තිබිය හැකිය. වෙබ් යෙදුම් එය කිරීමට පහසුම ක්රමයකි.
කෝඩ්බෙහින්ඩ්
මෙම මාතෘකාව .aspx සහ .ascx ගොනු සඳහා විශේෂිත වේ. කේත පිටුපස ලිපිගොනු භාවිතා නොකරන ASP.NET MVC සහ ASP.NET වෙබ් පිටු වැනි නව යෙදුම් රාමු වල මෙම මාතෘකාව අඩු වශයෙන් අදාළ වේ.
වෙබ් යෙදුම් වල .aspx පිටු සහ .ascx පාලකවල කේත පිටුපස ඇති ගොනු ඇතුළු සියලුම කේත ගොනු එකලස් කිරීමකින් ඔබ විසින් සෑම කුඩා වෙනසක් සඳහාම නැවත ගොඩනගා ගත යුතු අතර ඔබට සජීවී වෙනස්කම් කළ නොහැක. සංවර්ධනයේදී මෙය සැබෑ වේදනාවක් විය හැකිය, මන්දයත් ඔබ වෙනස්කම් දැකීම සඳහා නැවත ගොඩනැඟිය යුතු අතර වෙබ් අඩවි සමඟ වෙනස්කම් ධාවන වේලාවෙන් අනාවරණය වන අතර පිටු / පාලක ස්වයංක්රීයව නැවත සකස් වේ.
කේත නාම පිටුපස එකලස් කිරීම් කළමනාකරණය කිරීම ඔබට අඩු වැඩකි, මන්ද ඔබට පිටු ලබා දීම / අද්විතීය නම් ලබා දීම හෝ ඒවා විවිධ නාම අවකාශයන් ලෙස සංවිධානය කිරීම ගැන කරදර විය යුතු නැත.
කේත ලිපිගොනු යෙදවීම සැමවිටම හොඳ අදහසක් යැයි මම නොකියමි (විශේෂයෙන් හවුල් කේත ලිපිගොනු සම්බන්ධයෙන් නොවේ), නමුත් කේත පිටුපස ලිපිගොනු වල අඩංගු විය යුත්තේ UI විශේෂිත කාර්යයන් ඉටු කරන කේත, වයර්-අප් සිදුවීම් හසුරුවන්නන් යනාදියයි. ඔබේ යෙදුම විය යුතුය ලේයර් කර ඇති නිසා වැදගත් කේතය සෑම විටම බින් ෆෝල්ඩරයේ අවසන් වේ. එය එසේ නම්, කේත පිටුපස ලිපිගොනු යෙදවීම හානිකර ලෙස නොසැලකිය යුතුය.
වෙබ් යෙදුම්වල තවත් සීමාවක් නම් ඔබට භාවිතා කළ හැක්කේ ව්යාපෘතියේ භාෂාව පමණි. වෙබ් අඩවි වල ඔබට C # හි පිටු කිහිපයක්, VB හි සමහර පිටු තිබිය හැකිය. විශේෂ දෘශ්ය ස්ටුඩියෝ සහාය අවශ්ය නොවේ. ගොඩනැඟිලි සැපයුම්කරුගේ විස්තීරණතාවයේ සුන්දරත්වය එයයි.
වෙබ් යෙදුම් වලදී, පිටු / පාලක වල දෝෂ හඳුනාගැනීම සම්පාදකයා විසින් සම්පාදනය කරනුයේ ඔබේ කේත පිටුපස පන්ති මිස සලකුණු කිරීමේ කේතය නොවේ (MVC හි ඔබට මෙය MvcBuildViews විකල්පය භාවිතයෙන් නිවැරදි කළ හැකිය), එය ක්රියාත්මක වේලාවේදී සම්පාදනය කර ඇත.
විෂුවල් ස්ටුඩියෝ
වෙබ් යෙදුම් දෘශ්ය ස්ටුඩියෝ ව්යාපෘති බැවින් ඔබට වෙබ් අඩවි වල සමහර විශේෂාංග ලබා ගත නොහැක. නිදසුනක් ලෙස, ඔබට විවිධ කාර්යයන් ඉටු කිරීම සඳහා ගොඩනැඟිලි සිදුවීම් භාවිතා කළ හැකිය, උදා: ජාවාස්ක්රිප්ට් ගොනු අවම කිරීම සහ / හෝ ඒකාබද්ධ කිරීම.
විෂුවල් ස්ටුඩියෝ 2010 හි හඳුන්වා දුන් තවත් හොඳ ලක්ෂණයක් වන්නේ වෙබ් කොන්ෆිග් පරිවර්තනයයි .මෙය වෙබ් අඩවි වලද නොමැත. දැන් VS 2013 හි වෙබ් අඩවි සමඟ වැඩ කරයි.
වෙබ් යෙදුමක් තැනීම වෙබ් අඩවියක් තැනීමට වඩා වේගවත්ය, විශේෂයෙන් විශාල වෙබ් අඩවි සඳහා. මෙයට ප්රධානතම හේතුව වෙබ් යෙදුම් සලකුණු කේතය සම්පාදනය නොකිරීමයි. MVC හි ඔබ MvcBuildViews සත්ය ලෙස සකසා ඇත්නම් එය සලකුණු කේතය සම්පාදනය කරන අතර ඔබට දෝෂ හඳුනාගැනීම ලැබෙනු ඇත, එය ඉතා ප්රයෝජනවත් වේ. අවාසිය නම් ඔබ විසඳුම ගොඩනඟන සෑම අවස්ථාවකම එය සම්පූර්ණ වෙබ් අඩවිය ගොඩනගා ගැනීමයි, එය මන්දගාමී හා අකාර්යක්ෂම විය හැකිය, විශේෂයෙන් ඔබ වෙබ් අඩවිය සංස්කරණය නොකරන්නේ නම්. මම MvcBuildViews සක්රිය සහ අක්රිය කර ඇති බව මට පෙනේ (ඒ සඳහා ව්යාපෘති බෑමක් අවශ්ය වේ). අනෙක් අතට, වෙබ් අඩවි සමඟ ඔබට විසඳුමේ කොටසක් ලෙස වෙබ් අඩවිය තැනීමට අවශ්යද නැද්ද යන්න තෝරා ගත හැකිය. ඔබ එසේ නොකිරීමට තීරණය කරන්නේ නම්, විසඳුම තැනීම ඉතා වේගවත් වන අතර, ඔබට වෙනස්කම් සිදු කර ඇත්නම්, ඔබට සැමවිටම වෙබ් අඩවි නෝඩය මත ක්ලික් කර බිල්ඩ් තෝරන්න.
MVC වෙබ් යෙදුම් ව්යාපෘතියක ඔබට 'කාර්යයන් එක් කරන්න', 'බැලීමට යන්න', 'පාලකය එක් කරන්න' වැනි පොදු කාර්යයන් සඳහා අමතර විධාන සහ සංවාද ඇත. මේවා MVC වෙබ් අඩවියක නොමැත.
ඔබ සංවර්ධන සේවාදායකය ලෙස IIS එක්ස්ප්රස් භාවිතා කරන්නේ නම්, වෙබ් අඩවි වල ඔබට අථත්ය නාමාවලි එක් කළ හැකිය. මෙම විකල්පය වෙබ් යෙදුම් වල නොමැත.
NuGet පැකේජය ප්රතිස්ථාපනය වෙබ් අඩවි වල ක්රියා නොකරයි, ඔබ packages.config හි ලැයිස්තුගත කර ඇති පැකේජ අතින් ස්ථාපනය කළ යුතුය.පැකේජ ප්රතිස්ථාපනය දැන් NuGet 2.7 සිට වෙබ් අඩවි සමඟ ක්රියා කරයි