এএসপি.এনইটি এমভিসি ইঞ্জিনের তুলনা দেখুন


339

আমি এসপি এবং নেট এমভিসির জন্য উপলব্ধ বিভিন্ন ভিউ ইঞ্জিন ভাঙ্গার জন্য এসও এবং গুগলে অনুসন্ধান করেছিলাম, তবে ভিউ ইঞ্জিন কী তার সাধারণ উচ্চ-স্তরের বর্ণনার চেয়ে বেশি কিছু পাই নি।

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

কেউ কি এরকম তুলনা করেছে?


43
প্রচলিত যে এটি "গঠনমূলক নয়" তবুও জড়িতদের যারা এটি প্রায় 45K বার দেখেছেন তাদের অনেক বেশি মূল্য সরবরাহ করেছে। খুব খারাপ যে এসও সম্প্রদায়ের প্রয়োজন সত্ত্বেও তাদের নিজস্ব ইউটিলিটিটি সীমাবদ্ধ করে চলেছে। আমি সন্দেহ করি @ জেফ-আতউড এমনভাবে অনুভব করবেন।
ম্যাকামেই

উত্তর:


430

এএসপি.নেট এমভিসি দেখুন ইঞ্জিন (সম্প্রদায় উইকি)

যেহেতু একটি বিস্তৃত তালিকা উপস্থিত রয়েছে বলে মনে হচ্ছে না, তাই এখানে এসও থেকে শুরু করা যাক। লোকেরা যদি তাদের অভিজ্ঞতা যুক্ত করে (উদাহরণস্বরূপ এর মধ্যে যে কোনও একটিতে যারা অবদান রেখেছেন) তবে এটি এএসপি.এনইটি এমভিসি সম্প্রদায়ের কাছে বড় মূল্যবান হতে পারে। যে কোনও বাস্তবায়ন IViewEngine(যেমন VirtualPathProviderViewEngine) এখানে ন্যায্য খেলা game কেবলমাত্র নতুন ভিউ ইঞ্জিনগুলিকে বর্ণমালা করুন (উপরে WebFormViewEngine এবং রেজার রেখে) এবং তুলনা করে উদ্দেশ্যহীন হওয়ার চেষ্টা করুন।


System.Web.Mvc.WebFormViewEngine

ডিজাইন লক্ষ্য:

প্রতিক্রিয়ার জন্য ওয়েব ফর্ম পৃষ্ঠাটি রেন্ডার করতে ব্যবহৃত একটি ভিউ ইঞ্জিন।

পেশাদাররা:

  • সর্বব্যাপী যেহেতু এটি এএসপি.নেট এমভিসির সাথে বহন করে
  • ASP.NET বিকাশকারীদের জন্য পরিচিত অভিজ্ঞতা
  • IntelliSense
  • কোডডম সরবরাহকারীর সাথে যে কোনও ভাষা চয়ন করতে পারেন (যেমন সি #, ভিবি.এনইটি, এফ #, বু, নিমারল)
  • অন-ডিমান্ড সংকলন বা পূর্বনির্ধারিত মতামত

কনস:

  • ব্যবহার "ক্লাসিক এএসপি.নেট" নিদর্শনগুলির অস্তিত্বের সাথে বিভ্রান্ত হয়ে পড়ে যা এমভিসিতে আর প্রয়োগ হয় না (যেমন ভিউস্টেট পোস্টব্যাক)
  • "ট্যাগ স্যুপ" এর অ্যান্টি-প্যাটার্নে অবদান রাখতে পারে
  • কোড-ব্লক সিনট্যাক্স এবং শক্তিশালী-টাইপিং উপায় পেতে পারেন
  • ইনটেলিসেন্স স্টাইল প্রয়োগ করে সর্বদা ইনলাইন কোড ব্লকের জন্য উপযুক্ত নয়
  • সাধারণ টেম্পলেটগুলি ডিজাইন করার সময় গোলমাল হতে পারে

উদাহরণ:

<%@ Control Inherits="System.Web.Mvc.ViewPage<IEnumerable<Product>>" %>
<% if(model.Any()) { %>
<ul>
    <% foreach(var p in model){%>
    <li><%=p.Name%></li>
    <%}%>
</ul>
<%}else{%>
    <p>No products available</p>
<%}%>

System.Web.Razor

ডিজাইন লক্ষ্য:

পেশাদাররা:

  • কমপ্যাক্ট, এক্সপ্রেসিভ এবং ফ্লুয়েড
  • শেখা সহজ
  • কোনও নতুন ভাষা নয়
  • দুর্দান্ত ইন্টেলিজেন্স রয়েছে
  • ইউনিট টেস্টেবল
  • সর্বব্যাপী, এএসপি.নেট এমভিসি সহ জাহাজগুলি

কনস:

  • উপরে উল্লিখিত "ট্যাগ স্যুপ" থেকে কিছুটা আলাদা সমস্যা তৈরি করে। সার্ভার ট্যাগগুলি প্রকৃতপক্ষে সার্ভার এবং নন-সার্ভার কোডের চারপাশে কাঠামো সরবরাহ করে, রেজার এইচটিএমএল এবং জেএস বিকাশকে চ্যালেঞ্জিং করে তোলে (যেমন কন 1 উদাহরণ দেখুন) আপনি "এসএমএল" এবং "বা জাভাস্ক্রিপ্ট" এড়িয়ে যেতে পারেন কিছু খুব সাধারণ অবস্থার অধীনে ট্যাগ।
  • দুর্বল এনক্যাপসুলেশন + পুনঃব্যবহারযোগ্যতা: এটি একটি রেজার টেম্পলেটটিকে কল করা যেমন একটি সাধারণ পদ্ধতি ract অনুশীলনে রেজার কোড কল করতে পারে তবে বিপরীতভাবে নয়, যা কোড এবং উপস্থাপনার মিশ্রণকে উত্সাহিত করতে পারে।
  • সিনট্যাক্সটি খুব এইচটিএমএল-ভিত্তিক; এইচটিএমএল বিহীন সামগ্রী তৈরি করা জটিল হতে পারে। তবুও, রেজারের ডেটা মডেলটি মূলত কেবল স্ট্রিং-কনটেনটেশন, সুতরাং সিনট্যাক্স এবং নেস্টিং ত্রুটিগুলি স্থিতিশীল বা গতিশীলভাবে সনাক্ত করা যায় না, যদিও ভিএস.এনইটি ডিজাইন-সময় সহায়তা এটিকে কিছুটা কমিয়ে দেয়। রক্ষণাবেক্ষণ এবং পুনঃসারণযোগ্যতা এর কারণে ক্ষতিগ্রস্থ হতে পারে।
  • কোন নথিভুক্ত এপিআই , http://msdn.microsoft.com/en-us/library/system.web.razor.aspx

কন উদাহরণ # 1 ("স্ট্রিং [] ..." এর অবস্থান লক্ষ্য করুন):

@{
    <h3>Team Members</h3> string[] teamMembers = {"Matt", "Joanne", "Robert"};
    foreach (var person in teamMembers)
    {
        <p>@person</p>
    }
}

বেলভিউ

ডিজাইন লক্ষ্য:

  • এইচটিএমএলকে "কেবল পাঠ্য" হিসাবে বিবেচনা করার বিপরীতে প্রথম-শ্রেণীর ভাষা হিসাবে সম্মান করুন।
  • আমার এইচটিএমএল নিয়ে গণ্ডগোল করবেন না! ডেটা বাইন্ডিং কোড (বেলভ্যু কোড) HTML থেকে পৃথক হওয়া উচিত।
  • কঠোর মডেল-ভিউ পৃথককরণ কার্যকর করুন

পালের দড়ি

ডিজাইন লক্ষ্য:

মাইক্রোসফ্ট এএসপি.নেট এমভিসি ফ্রেমওয়ার্কের সাথে কাজ করার জন্য ব্রেইল ভিউ ইঞ্জিনটি মনোরেল থেকে পোর্ট করা হয়েছে। ব্রেইলের পরিচিতির জন্য, ক্যাসেল প্রকল্পের ওয়েবসাইটে ডকুমেন্টেশন দেখুন ।

পেশাদাররা:

  • "কব্জি-বান্ধব অজগর সিনট্যাক্স" পরে মডেল করা
  • অন-ডিমান্ড সংকলিত দর্শন (তবে কোনও প্রাক-সংকলন উপলভ্য নয়)

কনস:

  • বু ভাষায় লেখার জন্য নকশাকৃত

উদাহরণ:

<html>    
<head>        
<title>${title}</title>
</head>    
<body>        
     <p>The following items are in the list:</p>  
     <ul><%for element in list:    output "<li>${element}</li>"%></ul>
     <p>I hope that you would like Brail</p>    
</body>
</html>

Hasic

হাসিক বেশিরভাগ অন্যান্য ভিউ ইঞ্জিনের মতো স্ট্রিংয়ের পরিবর্তে ভিবি.নেট এর এক্সএমএল লিটারাল ব্যবহার করে।

পেশাদাররা:

  • বৈধ এক্সএমএল-এর সংকলন-সময় পরীক্ষা করা
  • সিনট্যাক্স রঙ
  • পূর্ণ বুদ্ধি
  • সংকলিত দর্শন
  • নিয়মিত সিএলআর ক্লাস, ফাংশন ইত্যাদি ব্যবহার করে বর্ধিতকরণ ibility
  • নির্বিঘ্ন কম্পোজেবিলিটি এবং হেরফেরটি হ'ল এটি নিয়মিত ভিবি.এনইটি কোড
  • ইউনিট পরীক্ষামূলক

কনস:

  • পারফরম্যান্স: ক্লায়েন্টে পাঠানোর আগে পুরো ডিওএম তৈরি করে।

উদাহরণ:

Protected Overrides Function Body() As XElement
    Return _
    <body>
        <h1>Hello, World</h1>
    </body>
End Function

NDjango

ডিজাইন লক্ষ্য:

এনডিজ্যাঙ্গো হ'ল এফ # ভাষা ব্যবহার করে .NET প্ল্যাটফর্মে জ্যাঙ্গো টেম্পলেট ভাষার একটি বাস্তবায়ন ।

পেশাদাররা:


NHaml

ডিজাইন লক্ষ্য:

রেল হামল ভিউ ইঞ্জিন .NET বন্দর। থেকে Haml ওয়েবসাইট :

হামল একটি মার্কআপ ল্যাঙ্গুয়েজ যা কোনও ওয়েব ডকুমেন্টের এক্সএইচটিএমএলকে ইনলাইন কোড ব্যবহার না করে পরিষ্কার এবং সহজভাবে বর্ণনা করতে ব্যবহার করা হয় ... হামল স্পষ্টতই টেমপ্লেটে এক্সএইচটিএমএল কোডিংয়ের প্রয়োজনীয়তা এড়ায়, কারণ এটি আসলে এক্সএইচটিএমএলের একটি বিমূর্ত বিবরণ গতিশীল সামগ্রী তৈরি করতে কিছু কোড সহ।

পেশাদাররা:

  • সংশ্লেষ কাঠামো (যেমন DRY)
  • ভাল অভিযুক্ত
  • পরিষ্কার কাঠামো
  • সি # ইন্টেলিজেন্স (রিএসপার্পার ছাড়াই ভিএস ২০০৮ এর জন্য)

কনস:

  • মার্কআপের পরিচিতিটি উপকার করার চেয়ে এক্সএইচটিএমএল থেকে বিমূর্ততা
  • ভিএস2010 এর জন্য কোনও ইন্টেলিজেন্স নেই

উদাহরণ:

@type=IEnumerable<Product>
- if(model.Any())
  %ul
    - foreach (var p in model)
      %li= p.Name
- else
  %p No products available

NVelocityViewEngine (MvcContrib)

ডিজাইন লক্ষ্য:

এনভিওলোসিটি ভিত্তিক একটি ভিউ ইঞ্জিন যা জনপ্রিয় জাভা প্রকল্প ভেলোসিটির একটি নেট নেট বন্দর ।

পেশাদাররা:

  • পড়তে / লিখতে সহজ
  • সংক্ষিপ্ত ভিউ কোড

কনস:

  • সীমিত সংখ্যক সহায়ক পদ্ধতির ভিউতে উপলব্ধ
  • স্বয়ংক্রিয়ভাবে ভিজ্যুয়াল স্টুডিও একীকরণ নেই (ইন্টেলিজেন্স, ভিউগুলির সংকলন-সময় চেকিং, বা রিফ্যাক্টরিং)

উদাহরণ:

#foreach ($p in $viewdata.Model)
#beforeall
    <ul>
#each
    <li>$p.Name</li>
#afterall
    </ul>
#nodata 
    <p>No products available</p>
#end

SharpTiles

ডিজাইন লক্ষ্য:

শার্পটাইসগুলি টাইলস কাঠামোর পিছনে ধারণার সাথে মিলিত জেএসটিএলের একটি আংশিক বন্দর (মাইল পাথর 1 হিসাবে)।

পেশাদাররা:

  • জাভা বিকাশকারীদের কাছে পরিচিত
  • এক্সএমএল-স্টাইলের কোড ব্লক

কনস:

  • ...

উদাহরণ:

<c:if test="${not fn:empty(Page.Tiles)}">
  <p class="note">
    <fmt:message key="page.tilesSupport"/>
  </p>
</c:if>

স্পার্ক ভিউ ইঞ্জিন

ডিজাইন লক্ষ্য:

ধারণাটি এইচটিএমএলকে প্রবাহ এবং কোডকে নির্বিঘ্নে ফিট করার অনুমতি দেয়।

পেশাদাররা:

কনস:

  • আক্ষরিক মার্কআপ থেকে টেমপ্লেট যুক্তির কোনও স্পষ্ট বিভাজন নেই (এটি নামস্থান উপসর্গ দ্বারা প্রশমিত করা যেতে পারে)

উদাহরণ:

<viewdata products="IEnumerable[[Product]]"/>
<ul if="products.Any()">
    <li each="var p in products">${p.Name}</li>
</ul>
<else>
    <p>No products available</p>
</else>

<Form style="background-color:olive;">
    <Label For="username" />
    <TextBox For="username" />
    <ValidationMessage For="username" Message="Please type a valid username." />
</Form>

স্ট্রিংটাইম্পলেট ভিউ ইঞ্জিন এমভিসি

ডিজাইন লক্ষ্য:

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

পেশাদাররা:

  • স্ট্রিংটেম্পলেট জাভা বিকাশকারীদের সাথে পরিচিত

কনস:

  • সরলাত্মক টেম্পলেট সিনট্যাক্স উদ্দেশ্যযুক্ত আউটপুট (যেমন jQuery বিরোধ ) হস্তক্ষেপ করতে পারে

উইং বিটস

উইং বিটস এক্সএইচটিএমএল তৈরির জন্য একটি অভ্যন্তরীণ ডিএসএল। এটি এফ # এর উপর ভিত্তি করে এবং এতে একটি এএসপি.নেট এমভিসি ভিউ ইঞ্জিন রয়েছে, তবে এটি এক্সএইচটিএমএল তৈরির সক্ষমতা জন্য একমাত্র ব্যবহৃত হতে পারে।

পেশাদাররা:

  • বৈধ এক্সএমএল-এর সংকলন-সময় পরীক্ষা করা
  • সিনট্যাক্স রঙ
  • পূর্ণ বুদ্ধি
  • সংকলিত দর্শন
  • নিয়মিত সিএলআর ক্লাস, ফাংশন ইত্যাদি ব্যবহার করে বর্ধিতকরণ ibility
  • নির্বিঘ্নে কম্পোজেবিলিটি এবং হেরফেরটি হ'ল এটি নিয়মিত এফ # কোড
  • ইউনিট পরীক্ষামূলক

কনস:

  • আপনি সত্যই এইচটিএমএল কিন্তু কোডটি লিখেন না যা কোনও ডিএসএলে এইচটিএমএলকে উপস্থাপন করে।

এক্সস্লটভিউইংগাইন (এমভিসি কনট্রিব)

ডিজাইন লক্ষ্য:

পরিচিত এক্সএসএলটি থেকে দর্শন তৈরি করে

পেশাদাররা:

  • ব্যাপকভাবে সর্বব্যাপী
  • এক্সএমএল বিকাশকারীদের জন্য পরিচিত টেম্পলেট ভাষা
  • XML- ভিত্তিক
  • সময় পরীক্ষিত
  • সিনট্যাক্স এবং উপাদান নেস্টিং ত্রুটিগুলি স্থিরভাবে সনাক্ত করা যায়।

কনস:

  • কার্যকরী ভাষা শৈলী প্রবাহ নিয়ন্ত্রণকে কঠিন করে তোলে
  • এক্সএসএলটি ২.০ হল (সম্ভবত?) সমর্থিত নয়। (এক্সএসএলটি 1.0 খুব কম ব্যবহারিক)।


9
@ ব্রায়ানলি: কারণ এফ # সংকলিত এবং কার্যক্ষম, যার অর্থ এটি দ্রুত, বাকী রানটাইম (কমপক্ষে সি # 4 অবধি), এবং আদর্শবানীর সাথে আরও আন্তঃযোগযোগ্য। আমরা প্রথমে প্রহসনের পথে নামলাম, তবে ফলাফল নিয়ে খুশি নই। নামকরণ পর্যন্ত - আমরা পরামর্শগুলির জন্য উন্মুক্ত :)
কলসী

7
ব্রেইলের কনস বিভাগের কারণে ডাউন ভোট দেওয়া। ভাষারূপে বু থাকা অবশ্যই কোন শঙ্কা নয়।
ওভেন

48
@ ওউইন: হ্যাঁ তাই। আপনাকে এটি একটি সি # বিকাশকারীর দৃষ্টিকোণ থেকে দেখতে হবে। আপনি কেবল একটি টেম্প্লেটিং ইঞ্জিন ব্যবহার করতে অন্য একটি ভাষা শিখতে চান না। (স্বাভাবিকভাবে যদি আপনি বুকে জানেন তবে এটি দুর্দান্ত, তবে বেশিরভাগ সি # বিকাশকারীদের পক্ষে এটি পরাস্ত করা একটি অতিরিক্ত বাধা)
খ্রিস্টান ক্লাউজার

5
রেজার সেখানে আছে। এটি রেজার বর্ণমালা আপডেট করা উচিত।
ম্যাকামে

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

17

আমার বর্তমান পছন্দ রেজার। এটি খুব পরিষ্কার এবং পড়া সহজ এবং দর্শন পৃষ্ঠাগুলি বজায় রাখা খুব সহজ রাখে। ইন্টেলিজেন্স সহায়তাও রয়েছে যা সত্যই দুর্দান্ত। ALos, ওয়েব সহায়কগুলির সাথে ব্যবহার করার সময় এটি সত্যিই শক্তিশালী।

একটি সাধারণ নমুনা সরবরাহ করতে:

@Model namespace.model
<!Doctype html>
<html>
<head>
<title>Test Razor</title>
</head>
<body>
<ul class="mainList">
@foreach(var x in ViewData.model)
{
<li>@x.PropertyName</li>
}
</ul>
</body>

এবং সেখানে আপনি এটা আছে। এটি খুব পরিষ্কার এবং সহজেই পড়া যায়। মঞ্জুর, এটি একটি সহজ উদাহরণ তবে জটিল পৃষ্ঠাগুলি এবং ফর্মগুলিতে এটি এখনও পড়া এবং বুঝতে খুব সহজ।

কনস হিসাবে? ভাল এখন অবধি (আমি এটিতে নতুন) ফর্মগুলির জন্য সাহায্যকারীদের কিছু ব্যবহার করার সময় সিএসএস শ্রেণির রেফারেন্স যুক্ত করার পক্ষে সমর্থনটির অভাব রয়েছে যা একটু বিরক্তিকর।

ধন্যবাদ নাথজ ০7


1
ডোহ! সবেমাত্র খেয়াল করে দেখুন এই আলোচনাটি কতটা পুরানো। ওহ ভাল, সম্ভবত কেউ এটির সন্ধান করবে এবং এটি এখনও কার্যকর প্রমাণিত হবে।
nathj07

10

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

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


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

7

এই শার্পডোমটি পরীক্ষা করুন । এটি এইচটিএমএল উত্পাদন এবং এসপিএন এমভিসি ভিউ ইঞ্জিন তৈরির জন্য এসি # 4.0 অভ্যন্তরীণ ডিএসএল।


মতামত তৈরির একমাত্র যুক্তিসঙ্গত উপায় মত শোনাচ্ছে।
স্টিফান এগারমন্ট

আপনি কি এটি সাধারণ উইকির উত্তরে যুক্ত করতে পারেন?
মৌরিসিও শেফার

আমি কোডপ্লেক্স বা গুগলে আর খুঁজে পাচ্ছি না। যেখানে এটা গিয়েছিলে?? (এটি এখনও কোডপ্রজেক্টে রয়েছে: কোডেপ্রজেক্ট / আর্টিকেলগুলি / 7566758৮১/২ )
জারেড

5

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


4

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

ছবিগুলি বলে যে হাজার শব্দ এবং মার্কআপের নমুনাগুলি দেখার ইঞ্জিনগুলির জন্য স্ক্রিনশটের মতো :) তাই এখানে আমার প্রিয় স্পার্ক ভিউ ইঞ্জিনের একটি

<viewdata products="IEnumerable[[Product]]"/>
<ul if="products.Any()">
  <li each="var p in products">${p.Name}</li>
</ul>
<else>
  <p>No products available</p>
</else>

4
কোল্ডফিউশন মত দেখতে অনেক বেশি। আমি এর মতো মার্কআপে কোড মেশানোর কোনও বড় ভক্ত নই। এটি বজায় রাখা কঠিন হয়ে পড়ে।
চতুর জেদী
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.