আমার একটি পৃষ্ঠা আছে:
<%@ Page Inherits="System.Web.Mvc.View<DTOSearchResults>" %>
এবং এটিতে, নিম্নলিখিত:
<% Html.RenderPartial("TaskList", Model.Tasks); %>
এখানে ডিটিও অবজেক্টটি রয়েছে:
public class DTOSearchResults
{
public string SearchTerm { get; set; }
public IEnumerable<Task> Tasks { get; set; }
এবং এখানে আংশিক:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<IEnumerable<Task>>" %>
যখন মডেল.টাস্কগুলি শূন্য হয় না, সবকিছু ঠিকঠাক করে। তবে আমি যখন এটি বাতিল করব তখন:
অভিধানে পাস হওয়া মডেল আইটেমটি 'ডিটিওএস সার্চ রেজাল্টস' টাইপের তবে এই অভিধানটিতে 'সিস্টেম.কলেশনস.জেনেরিক.আইইউনামারেবল `১ [টাস্ক]' টাইপের একটি মডেল আইটেমের প্রয়োজন।
আমি বুঝতে পেরেছিলাম যে কোন ওভারলোডটি ব্যবহার করা উচিত তা অবশ্যই জানতে হবে না, তাই স্পষ্ট হওয়ার জন্য আমি এটি (নীচে দেখুন) করেছি, তবে আমি এখনও একই সমস্যা পেয়েছি!
<% Html.RenderPartial("TaskList", (object)Model.Tasks, null); %>
আমি জানি আমি নাল পরীক্ষা করে, বা এমনকি নাল পাস না করেও এটিকে ঘিরে কাজ করতে পারি, তবে এটি বিন্দু নয়। এটি কেন ঘটছে?