ধরুন আমার মতো ভিউমোডেল রয়েছে
public class AnotherViewModel
{
public string Name { get; set; }
}
public class MyViewModel
{
public string Name { get; set; }
public AnotherViewModel Child { get; set; }
public AnotherViewModel Child2 { get; set; }
}
ভিউতে আমি এর সাথে একটি আংশিক রেন্ডার করতে পারি
<% Html.RenderPartial("AnotherViewModelControl", Model.Child) %>
আংশিকভাবে আমি করব
<%= Html.TextBox("Name", Model.Name) %>
or
<%= Html.TextBoxFor(x => x.Name) %>
তবে, সমস্যাটি হ'ল মডেল বাইন্ডার সঠিকভাবে কাজ করার জন্য আমার নাম = "চাইল্ড.নাম" থাকা দরকার থাকা অবস্থায় উভয়ই নাম = "নাম" রেন্ডার করে। বা, নাম = "চাইল্ড 2.নাম" যখন আমি একই আংশিক দৃশ্য ব্যবহার করে দ্বিতীয় সম্পত্তি রেন্ডার করি।
আমি কীভাবে আমার আংশিক দৃশ্যটি প্রয়োজনীয় উপসর্গটি স্বয়ংক্রিয়ভাবে স্বীকৃতি দেব? আমি এটি প্যারামিটার হিসাবে পাস করতে পারি তবে এটি খুব অসুবিধাজনক নয়। এটি আরও খারাপ হয় যখন আমি উদাহরণস্বরূপ এটি পুনরাবৃত্তভাবে রেন্ডার করতে চাই। কলিং ল্যাম্বডা এক্সপ্রেশনটির স্বয়ংক্রিয় পুনর্নির্মাণের সাথে একটি উপসর্গের সাথে আংশিক মতামত রেন্ডার করার কি আরও ভাল উপায় রয়েছে, যাতে আরও ভাল?
<% Html.RenderPartial("AnotherViewModelControl", Model.Child) %>
স্বয়ংক্রিয়ভাবে সঠিক "শিশু" যুক্ত হবে। উত্পন্ন নাম / আইডি স্ট্রিংগুলির উপসর্গ?
আমি 3-তম পার্টির ভিউ ইঞ্জিন এবং লাইব্রেরি সহ যে কোনও সমাধান গ্রহণ করতে পারি - আমি আসলে স্পার্ক ভিউ ইঞ্জিন (এর ম্যাক্রোগুলি ব্যবহার করে সমস্যাটি "সমাধান") করি এবং সেখানে কোনও সমাধান পাইনি। এক্স ফোর্মস, ইনপুটবিল্ডার, এমভিসি ভি 2 - এই কার্যকারিতাটি সরবরাহ করে এমন কোনও সরঞ্জাম / অন্তর্দৃষ্টি দুর্দান্ত হবে।
বর্তমানে আমি এটিকে নিজের কোডিংয়ের বিষয়ে ভাবছি তবে এটি সময়ের অপচয় হিসাবে মনে হচ্ছে, আমি বিশ্বাস করতে পারি না যে এই তুচ্ছ জিনিসটি ইতিমধ্যে বাস্তবায়িত হয়নি।
অনেকগুলি ম্যানুয়াল সমাধান উপস্থিত থাকতে পারে এবং সেগুলি সবই স্বাগত। উদাহরণস্বরূপ, আমি আমার পার্টিয়ালগুলিকে আইপিআরটিভিউমোডেল <T> {পাবলিক স্ট্রিং উপসর্গের ভিত্তিতে বাধ্য করতে পারি; টি মডেল; }। তবে আমি বরং কিছু বিদ্যমান / অনুমোদিত সমাধান পছন্দ করব।
আপডেট: একই উত্তর এখানে নেই ।
helper.ViewData.TemplateInfo.HtmlFieldPrefix
{oldprefix}.{newprefix}