Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在API之间传递内存流/流_C#_Asp.net Mvc_Rest_Memory Management_Stream - Fatal编程技术网

C# 在API之间传递内存流/流

C# 在API之间传递内存流/流,c#,asp.net-mvc,rest,memory-management,stream,C#,Asp.net Mvc,Rest,Memory Management,Stream,我有一个Web API项目,它调用另一个API,第二个API将返回一个流或MemoryStream,而接收API获取流并使用它处理/刷新一个文件给用户 问题是,如果第二个API上填充的MemoryStream或流被释放,问题是如果它被释放,那么该流就不能在接收端使用,因为它将被释放,那么它应该在接收端被释放吗 我想了解更多关于这一点,并将感谢任何投入 或者我应该改为发送字节数组,流的内容将生成一个文件,该文件具有超过60万条特定文件格式的记录。您不应该处理提供给您的流,也不应该自己创建流。由来电

我有一个Web API项目,它调用另一个API,第二个API将返回一个流或MemoryStream,而接收API获取流并使用它处理/刷新一个文件给用户

问题是,如果第二个API上填充的MemoryStream或流被释放,问题是如果它被释放,那么该流就不能在接收端使用,因为它将被释放,那么它应该在接收端被释放吗

我想了解更多关于这一点,并将感谢任何投入


或者我应该改为发送字节数组,流的内容将生成一个文件,该文件具有超过60万条特定文件格式的记录。

您不应该处理提供给您的流,也不应该自己创建流。由来电者决定何时使用完毕。他们很可能会将构造函数包装在using语句中,这样您就不想过早地处理它了


一个字节数组对于如此大的结果集可能是一个坏主意,因为你最终会将整个内容保存在RAM中,而流可以顾名思义地流化,而不需要一次读取整个内容。

我认为这是一种实际尝试比回答更容易理解的情况。试一下,你应该很容易找到问题的答案谢谢,为什么不找一个解释,自己试试呢。我不觉得这样问有什么坏处。这是一个很好的解释。。。还有一个问题。您讨论的是在单个应用程序中创建的对象,而问题是多应用程序问题。这个答案中没有任何内容实际上是相关的,只会混淆@jedgard。