نامی که در قالب برای sourceName میگذارید باید حتما با نام پروژه قالب یکی باشد.اگر نباشد این اتفاق رخ میدهد و امکان تغییر نام پروژه وجود ندارد
۳ سال و ۱ ماه قبل، سهشنبه ۲۲ تیر ۱۴۰۰، ساعت ۰۷:۰۹
<Target Name="PostBuild" AfterTargets="PostBuildEvent"> <Exec Command="xcopy /y /d $(ProjectDir)Packages\*.* $(OutDir)" /> </Target>
public static class StimulSoftLicense { public static void LoadLicense(IWebHostEnvironment environment) { var contentRoot = environment.ContentRootPath; var licenseFile = System.IO.Path.Combine(contentRoot,"Reports", "license.key"); Stimulsoft.Base.StiLicense.LoadFromFile(licenseFile); } }
public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { StimulSoftLicense.LoadLicense(env); }
public IActionResult RequestReport(int id) { return View(); } public IActionResult LoadReportData(int id) { StiReport report = new StiReport(); report.Load(StiNetCoreHelper.MapPath(this, "Reports/Requests/RequestInfo.mrt")); var landDetailsReport = GetOwnerReportData(id); report.RegBusinessObject("Land", landDetailsReport); return StiNetCoreViewer.GetReportResult(this, report); } public IActionResult ViewerEvent() { return StiNetCoreViewer.ViewerEventResult(this); }
<div style="direction: ltr"> @Html.StiNetCoreViewer(new StiNetCoreViewerOptions() { Theme = StiViewerTheme.Office2007Silver, Appearance = { RightToLeft = true, //ShowTooltips = false, ShowTooltipsHelp = false, }, Localization = "~/Reports/fa.xml", Actions = { GetReport = "LoadReportData", ViewerEvent = "ViewerEvent", }, Toolbar = { ShowAboutButton = false, ShowOpenButton = false, ShowSaveButton = true, ShowFindButton = false, ShowEditorButton = false, ShowDesignButton = false, ShowBookmarksButton = false, ShowResourcesButton = false, ShowParametersButton = false, ShowPinToolbarButton = false }, Exports = { DefaultSettings = { ExportToPdf = { CreatorString = "SANA" } }, ShowExportDialog = false, ShowExportToDocument = false, ShowExportToExcel = false, ShowExportToExcel2007 = false, ShowExportToHtml = false, ShowExportToHtml5 = false, ShowExportToImageBmp = false, ShowExportToImageJpeg = false, ShowExportToImagePcx = false, ShowExportToImagePng = false, ShowExportToImageMetafile = false, ShowExportToImageTiff = false, ShowExportToOpenDocumentCalc = false, ShowExportToMht = false, ShowExportToOpenDocumentWriter = false, ShowExportToXps = false, ShowExportToSylk = false, ShowExportToRtf = false, ShowExportToExcelXml = false, ShowExportToText = false, ShowExportToWord2007 = false, ShowExportToImageGif = false, ShowExportToCsv = false, ShowExportToDbf = false, ShowExportToDif = false, ShowExportToImageSvg = false, ShowExportToImageSvgz = false, ShowExportToPowerPoint = false, ShowExportToXml = false, ShowExportToJson = false } }) </div>
.stiJsViewerClearAllStyles { font-family: "IRANSans" !important; } //مخصوص دیالوگ تنظیمات خروجی در صورت فعال بودن .stiJsViewerGroupPanelContainer{ direction: rtl !important; } .stiJsViewerFormButtonDefault{ direction: rtl !important; } .stiJsViewerFormButtonOver{ direction: rtl !important; } .stiJsViewerFormButtonDefault>table>tbody>tr>td{ text-align: right !important; } .stiJsViewerFormButtonOver>table>tbody>tr>td{ text-align: right !important; } .stiJsViewerFormHeader{ direction: rtl; } .stiJsViewerFormHeader>table>tbody>tr>td{ text-align: right !important; } .stiJsViewerCheckBox{ direction:rtl !important; } .stiJsViewerDropdownPanel{ direction:rtl !important; } .stiJsViewerFormContainer td.stiJsViewerClearAllStyles{ direction:rtl !important; } .stiMvcViewerReportPanel table{ direction:ltr !important; }
filterContext.HttpContext.Request.Unvalidated[key]
public class DiskSmtpClient : SmtpClient { public DiskSmtpClient(IOptionsSnapshot<MailKitOptions> mailOptionsSnapshot) { if (mailOptionsSnapshot.Value.SpecifiedPickupDirectory) { SpecifiedPickupDirectory = true; PickupDirectoryLocation = mailOptionsSnapshot.Value.PickupDirectoryLocation; } } public bool SpecifiedPickupDirectory { get; set; } public string PickupDirectoryLocation { get; set; } public override Task SendAsync(MimeMessage message, CancellationToken cancellationToken = new CancellationToken(), ITransferProgress progress = null) { if (!SpecifiedPickupDirectory) return base.SendAsync(message, cancellationToken, progress); return SaveToPickupDirectory(message, PickupDirectoryLocation); } private async Task SaveToPickupDirectory(MimeMessage message, string pickupDirectory) { using (var stream = new FileStream($@"{pickupDirectory}\email-{Guid.NewGuid().ToString("N")}.eml", FileMode.CreateNew)) { await message.WriteToAsync(stream); } } public override Task ConnectAsync(string host, int port = 0, SecureSocketOptions options = SecureSocketOptions.Auto, CancellationToken cancellationToken = new CancellationToken()) { if (!SpecifiedPickupDirectory) return base.ConnectAsync(host, port, options, cancellationToken); return Task.CompletedTask; } public override Task DisconnectAsync(bool quit, CancellationToken cancellationToken = new CancellationToken()) { if (!SpecifiedPickupDirectory) return base.DisconnectAsync(quit, cancellationToken); return Task.CompletedTask; } }
services.AddTransient<DiskSmtpClient>();
var email = "mail@dotnettips.info"; var subject = "subject"; var message = "message"; var emailMessage = new MimeMessage(); emailMessage.From.Add(new MailboxAddress("DNT", "do-not-reply@dotnettips.info")); emailMessage.To.Add(new MailboxAddress("", email)); emailMessage.Subject = subject; emailMessage.Body = new TextPart(TextFormat.Html) { Text = message }; _client.SpecifiedPickupDirectory = true; _client.PickupDirectoryLocation = "c:\\mail"; _client.LocalDomain = "dotnettips.info"; await _client.ConnectAsync("smtp.relay.uri", 25, SecureSocketOptions.None).ConfigureAwait(false); await _client.SendAsync(emailMessage).ConfigureAwait(false); await _client.DisconnectAsync(true).ConfigureAwait(false);
services.Configure<MailKitOptions>(options => Configuration.GetSection("MailKitOptions").Bind(options));
"MailKitOptions": { "SpecifiedPickupDirectory": true, "PickupDirectoryLocation": "c:\\mail" }
public class MailKitOptions { public bool SpecifiedPickupDirectory { get; set; } public string PickupDirectoryLocation { get; set; } }
smtpServer.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory; smtpServer.PickupDirectoryLocation = "c:\\mail";
https://localhost:5001/swagger/LibraryOpenAPISpecification/swagger.json
.glimpse-nowrap {bottom:52px !important;}