في هذا الجزء سوف نقوم بعمل User Control   لكي نعرض التقرير باستعمال ال Ajax  لاننا نحتاج لعرض التقرير بدون اعادة تهيئة الصفحة (Post Back) ولاننا نريد عمل اداة في المشروع تقوم بعرض كافة التقارير دون  الحاجة لكتابة الكود مرة اخرى

نبدأ اولا باضافة الاداة في المشروع كالتالي، حيث نختار اضافة عنصر جديد

ثم نختار Partial Page لانها سوف تصبح اداه عامة تستخدمها كافة التقارير

بعد ذلك تتم اضافتها للمشروع تحت الملف Shared في Views

وهنا نبدأ باستدعاء ال Class  Report Settings  ودوالي ال MvcReportViewer  التي قمنا ببرمجتها في الجزء الاول من هذا الدرس كالتالي

حيث يمكنك الان فهم وملاحظة لماذا قمنا بعمل كلاس واحد يحتوي جميع خصائص التقرير وذلك لاستدعائه في اداة واحده وتوفير الوقت والجهد وتقليل الكود الذي سوف تكتبه لاحقا

[sourcecode]@using MvcReportViewer

@using System;
@model AttandanceManagment.Models.ReportSettings
@if (Model.ReportDataSource != null && Model.ReportDataSource.Rows.Count > 0)
{
@Html.MvcReportViewer(Server.MapPath(Model.ReportPath))
.ProcessingMode(Microsoft.Reporting.WebForms.ProcessingMode.Local)
.LocalDataSource("HyperDataset", Model.ReportDataSource)
.ReportParameters(Model.ReportParameters)
.ControlSettings(Model.ReportControlSettings)
.Attributes(new{
Width = 680,
Height = 700,
style = "text-align: right; border: none"
}).Method(FormMethod.Post)
}
else
{
NoDataFound
}[/sourcecode]