সাধারণত একটি এএসপি.এনইটি ভিউতে ইউআরএল (কোনও নয় <a>
) পাওয়ার জন্য নিম্নলিখিত ফাংশনটি ব্যবহার করতে পারে :
Url.Action("Action", "Controller");
তবে, কাস্টম এইচটিএমএল সহায়ক থেকে এটি কীভাবে করব তা আমি খুঁজে পাচ্ছি না। আমার আছে
public class MyCustomHelper
{
public static string ExtensionMethod(this HtmlHelper helper)
{
}
}
সহায়ক ভেরিয়েবলের অ্যাকশন এবং জেনারেটলিঙ্ক পদ্ধতি রয়েছে তবে তারা এর উত্পন্ন করে <a>
। আমি এএসপি.নেট এমভিসি উত্স কোডটিতে কিছু খনন করেছি, তবে আমি সরল কোনও উপায় খুঁজে পাইনি।
সমস্যাটি হ'ল উপরের ইউরালটি ভিউ ক্লাসের একজন সদস্য এবং এটির তাত্ক্ষণিকতার জন্য এটি কিছু প্রসঙ্গ এবং রুটের মানচিত্রের প্রয়োজন (যা আমি মোকাবেলা করতে চাই না এবং আমার কোনওভাবেই ভাবার কথা নয়)। বিকল্পভাবে, এইচটিএমএলহেল্পার শ্রেণীর উদাহরণটিরও কিছু প্রসঙ্গ রয়েছে যা আমি ধরে নিই যে তা হয় ইউরাল উদাহরণের প্রসঙ্গ তথ্যটির সাবসেটের সরবরাহকারী (তবে আবার আমি এটির সাথে কাজ করতে চাই না)।
সংক্ষেপে, আমি এটি সম্ভব বলে মনে করি কিন্তু যেহেতু আমি যে সমস্ত উপায়ে দেখতে পাচ্ছিলাম, যেহেতু আরও কম বা কম অভ্যন্তরীণ এএসপি.নেট স্টাফের সাথে কিছুটা কারসাজি জড়িত, আমি আরও অবাক হই যে আরও ভাল উপায় আছে কিনা wonder
সম্পাদনা করুন: উদাহরণস্বরূপ, আমি দেখতে পাচ্ছি একটি সম্ভাবনা হ'ল:
public class MyCustomHelper
{
public static string ExtensionMethod(this HtmlHelper helper)
{
UrlHelper urlHelper = new UrlHelper(helper.ViewContext.RequestContext);
urlHelper.Action("Action", "Controller");
}
}
তবে এটি ঠিক মনে হচ্ছে না। আমি নিজেই আরলহেল্পারের উদাহরণগুলির সাথে কাজ করতে চাই না। একটি সহজ উপায় থাকতে হবে।