سلام. موقع استفاده از استیمول سافت در Asp.net core با خطای license مواجه میشم.
متن خطا :
An unhandled exception occurred while processing the request.
Exception: The license key is not valid!
Stimulsoft.Base.StiLicense.SetNewLicenseKey(string value, bool throwException)
لطفا راهنمایی بفرمایید چجوری باید این خطا رو رفع کنم ؟
استیمول سافت یک نرم افزار غیررایگان می باشد که برای استفاده از آن یا باید نسخه اصلی را از شرکت سازنده تهیه کنید یا اینکه با داشتن لایسنس از این نرم افزار استفاده کنید.
برای استفاده از استیمول سافت در Asp.net Core ابتدا باید پکیج های مورد نیاز رو از nuget.org دانلود و در پروژه خود استفاده کنید.
PM> Install Stimulsoft.Reports.Web.NetCore -Version 2019.2.1
بعد از اینکه پکیج مورد نیاز در پروژه شما نصب شد باید از استیمول سافت استفاده کنید. نحوه استفاده از استیمول سافت در Asp.net Core به صورت زیر می باشد.
کدهای مورد نیاز که در کنترلر باید بنویسید :
public class MyController : Controller
{
private readonly IWebHostEnvironment _hosting;
public MyController(IWebHostEnvironment hosting)
{
_hosting = hosting;
//در اینجا باید آدرس فایل لایسنس مشخص شود
var stimulKey = Path.Combine(_hosting.ContentRootPath, "wwwroot\\reports\\license", "license.key");
if (System.IO.File.Exists(stimulKey))
{
StiLicense.LoadFromFile(stimulKey);
}
}
}
خب همونطوری که در کدهای بالا مشخص می باشد باید فایل لایسنس (در اینجا این فایل license.key نام دارد) را در اختیار داشته باشید و این فایل را در روت سایت خود نگهداری کنید. (در این مثال این فایل در پوشه wwwroot و در پوشه reports نگهداری شده است). خب با استفاده از این فایل می تونید به راحتی از استیمول سافت بدون نگرانی از اینکه مشکل لایسنس داشته باشید استفاده کنید.
بعد از اینکه پکیج موردنیاز برای استفاده از استیمول سافت را به پروژه خود اضافه کردید و کدهای مربوط به لایسنس هم نوشتید می تونید به راحتی گزارش هایی رو که توسط استیمول سافت طراحی کردید رو نمایش بدید.
StiReport report = new StiReport();
//متغیرها به صورت زیر مقداردهی می شود
report["date"] = "1399/10/20";
report.Load(StiNetCoreHelper.MapPath(this, "wwwroot/reports/report.mrt"));
return StiNetCoreReportResponse.PrintAsPdf(report);
لایسنس ارایه شده در پاسخ بالا اخیرا کار نمیکنه. یا باید یک لایسنس صحیح پیدا کنید و به جای این لایسنس استفاده کنید و یا اینکه در لینک زیر خودتون دستی استیمول سافت رو کرک کنید.
لینک دانلود فایل های dll استیمول سافت کرک شده. کافیه روی هاست فایل های استیمول سافت رو پاک کنید و به جاش این فایل های dll کرک شده رو کپی کنید.
روش استفاده در ویژوال استودیو و در Asp.net Core
یک پوشه به نام packages توی روت پروژه ایجاد کنید و dll های اصلی که در تصویر زیر می بینید رو توش کپی کنید. این dll ها رو از لینک بالا دانلود و پیدا کنید.
حالا روی نام پروژه راست کلیک کنید و گزینه Properties رو بزنید. از منوهای سمت چپ روی Build کلیک کنید و قسمت post-build event رو پیدا کنید. دستور زیر رو کپی کنید. این دستور باعث میشه محتویات پوشه packages در هر بار build پروژه در پوشه debug یا release قرار بگیره.
xcopy /y /d "$(ProjectDir)Packages\*.*" "$(ProjectDir)$(OutDir)"
تصویر زیر هم همین کارو انجام دادیم.
خب حالا در هر کنترلری که میخاید گزارش رو نمایش بدید در Constructor دستور زیر رو بنویسید :
using Stimulsoft.Report.Mvc;
using Stimulsoft.Report;
...
public ReportController()
{
Stimulsoft.Base.StiLicense.Key = "6vJhGtLLLz2GNviWmUTrhSqnOItdDwjBylQzQcAOiHkcgIvwL0jnpsDqRpWg5FI5kt2G7A0tYIcUygBh1sPs7koivWV0htru4Pn2682yhdY3+9jxMCVTKcKAjiEjgJzqXgLFCpe62hxJ7/VJZ9Hq5l39md0pyydqd5Dc1fSWhCtYqC042BVmGNkukYJQN0ufCozjA/qsNxzNMyEql26oHE6wWE77pHutroj+tKfOO1skJ52cbZklqPm8OiH/9mfU4rrkLffOhDQFnIxxhzhr2BL5pDFFCZ7axXX12y/4qzn5QLPBn1AVLo3NVrSmJB2KiwGwR4RL4RsYVxGScsYoCZbwqK2YrdbPHP0t5vOiLjBQ+Oy6F4rNtDYHn7SNMpthfkYiRoOibqDkPaX+RyCany0Z+uz8bzAg0oprJEn6qpkQ56WMEppdMJ9/CBnEbTFwn1s/9s8kYsmXCvtI4iQcz+RkUWspLcBzlmj0lJXWjTKMRZz+e9PmY11Au16wOnBU3NHvRc9T/Zk0YFh439GKd/fRwQrk8nJevYU65ENdAOqiP5po7Vnhif5FCiHRpxgF";
}
امروز که این پاسخ رو ارسال میکنم این روش به خوبی کار میکنه و علامت Trial هم روی گزارش نمیفته.
موفق باشید.
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
49
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
88
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1031
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
426
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1346
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4796
- پاسخ :
1
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
205
- پاسخ :
1
|
تاریخ :
1403/07/26
- ساعت :
09:00:00 PM
- بازدید :
115
- پاسخ :
0
|
تاریخ :
1403/05/16
- ساعت :
09:57:00 AM
- بازدید :
393
- پاسخ :
2
|
تاریخ :
1403/06/25
- ساعت :
11:39:00 PM
- بازدید :
561
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
49
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
88
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1031
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
426
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
930
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1346
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4796
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1156
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
594
- پاسخ :
1
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
205
- پاسخ :
1
|