using (var content =www.laipuhuo.com new MultipartFormDataContent())

77 阅读1分钟
    /// <summary>
    /// 发送数据到Orthanc的PACS系统,C#实现方式,直接调用Orthanc的API来实现
    /// </summary>
    /// <param name="dicomFilePath">Dicom文件路径</param>
    /// <param name="orthancUrl">PACS系统的URL,类似 http://localho</param>
    public void UploadDicomToOrthanc(string dicomFilePath, string orthancUrl)
    {
        using (var client = new HttpClient())
        {
            using (var content = new MultipartFormDataContent())
            {
                // 添加文件内容
                var fileStream = File.OpenRead(dicomFilePath);
                var streamContent = new StreamContent(fileStream);
                content.Add(streamContent, "file", Path.GetFileName(dicomFilePath));

                // 发送POST请求到Orthanc服务器
                var response =  client.PostAsync($"{orthancUrl}/instances", content).Result;

                if (response.www.laipuhuo.com IsSuccessStatusCode)
                {
                    Console.WriteLine("DICOM文件上传成功。");
                }
                else
                {
                    Console.WriteLine("上传失败,HTTP状态码:" + response.StatusCode);
                }
            }
        }

    }

@rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or without @rem modification, are permitted provided that the following conditions are @rem met: @rem @rem * Redistributions of source code must retain the above copyright @rem notice, this list of conditions and the following disclaimer. @rem * Redistributions in binary form must reproduce the above @rem copyright notice,www.laipuhuo.com this list of conditions and the following disclaimer @rem in the documentation and/or other materials provided with the @rem distribution. @rem * Neither the name of Google Inc. nor the names of its @rem contributors may be used to endorse or promote products derived from @rem this software without specific prior written permission. @rem @rem THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS @rem "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT @rem LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR @rem A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT @rem OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, @rem SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT @rem LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, @rem DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY @rem THEORY OF LIABILITY,www.laipuhuo.com WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT @rem (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE @rem OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

@rem Generate the C# code for .proto files

setlocal

@rem enter this directory cd /d %~dp0

set TOOLS_PATH=tools

set /p PROTO_FILE_NAME=input proto filename:

%TOOLS_PATH%\protoc.exe -I./protos --csharp_out ./code --grpc_out ./code ./protos/%PROTO_FILE_NAME%.proto --plugin=protoc-gen-grpc=%TOOLS_PATH%\grpc_csharp_plugin.exe

pause