小编kpg*_*kpg的帖子

从 C# .NetCore API 返回 FileStreamResult 时无法访问关闭的 Stream

C# .Net-Core 3.1

在我的 C# api 中,我在 FileStreamResult 中返回一个 pdf 文件,效果很好。

一般来说,我将流包装在 using 中,但是此代码失败并显示 Cannot access a closed Stream.

using (MemoryStream stream = new MemoryStream(byteArray))
{
    fileStreamResult = new FileStreamResult(stream, "application/pdf");
}
return (ActionResult)fileStreamResult;
Run Code Online (Sandbox Code Playgroud)

所以我需要这样做:

var stream = new MemoryStream(byteArray);
fileStreamResult = new FileStreamResult(stream, "application/pdf");
return (ActionResult)fileStreamResult;
Run Code Online (Sandbox Code Playgroud)

我假设流需要保持打开状态,我应该担心内存泄漏还是 IIS 会关闭流吗?有更好的选择吗?

c# memorystream using filestreamresult .net-core

2
推荐指数
1
解决办法
2983
查看次数

如何通过outlook自动发送电子邮件时从电子邮件地址进行设置

在传统的vb6程序中,我使用下面的代码使用完整版本的outlook(而不是outlook express)发送电子邮件.效果很好.

现在,用户希望'from:'地址对于不同的用途是不同的,以便在回复电子邮件时,响应将显示在Outlook中的用户收件箱中.目前,电子邮件来自主要的企业电子邮件地址.

我觉得这很容易解决; 我只需要在OutMail对象中设置.from属性,但是看起来OutMail对象中没有'.from'属性.(它可能被称为其他东西?)

所以在这一点上我想知道它现在是如何工作的,没有.from指定,我假设用户在outlook中设置了多个电子邮件帐户,它使用主要电子邮件用于业务,而不是单个用户.

如何使用此技术指定来自电子邮件地址?

Dim mOutlookApp As Object
    Set mOutlookApp = GetObject("", "Outlook.application")

    Dim olNs As Object
    Set olNs = mOutlookApp.GetNamespace("MAPI")
    olNs.Logon

    Dim OutMail As Object
    Set OutMail = mOutlookApp.CreateItem(0)

    'Set the To and Subject lines.  Send the message.
    With OutMail
        .To = txtTo
        .CC = txtCC
        .Subject = txtSubjext
        .HTMLBody = txtBody & vbCrLf

        Dim myAttachments As Object
        Set myAttachments = .Attachments
        vAttach = Split(mAttachments, ",")
        For i = 0 To UBound(vAttach)
            myAttachments.add vAttach(i)
        Next i …
Run Code Online (Sandbox Code Playgroud)

email vb6 mapi outlook automation

1
推荐指数
1
解决办法
48
查看次数