데이터베이스 액세스 없이 ASP.NET MVC에서 바이트 배열 이미지를 효율적으로 표시
많은 ASP.NET MVC 애플리케이션은 해당 모델 내에 이미지를 바이트 배열로 저장합니다. 그러나 이러한 이미지를 검색하기 위해 데이터베이스에 반복적으로 액세스하면 성능에 영향을 미칩니다. 이 기사에서는 효율성 향상을 위해 데이터베이스를 우회하여 모델에서 직접 바이트 배열 이미지를 표시하는 솔루션을 제시합니다.
핵심은 .NET의 내장 기능을 활용하여 바이트 배열을 Base64 문자열로 변환하는 것입니다. 이 문자열은 HTML <img>
태그의 소스가 되어 웹페이지에 이미지를 직접 렌더링합니다.
과정은 다음과 같습니다.
Convert.ToBase64String()
을 사용하여 바이트 배열을 Base64 인코딩 문자열로 변환합니다.src
태그의 <img>
속성으로 삽입합니다.이 코드 조각은 구현을 보여줍니다.
<code class="language-csharp">@{ var base64 = Convert.ToBase64String(Model.ByteArray); var imgSrc = $"data:image/{Model.ImageType};base64,{base64}"; //Improved using string interpolation and dynamic image type } <img src="@imgSrc" alt="Image from byte array" /></code>
이 최적화된 접근 방식은 반복적인 데이터베이스 호출을 방지하여 이미지 로드 속도를 높이고 전체 애플리케이션 성능을 향상시킵니다. 접근성을 위해 alt
속성이 추가되었습니다. 또한 이 예에서는 더 깔끔한 코드를 위해 문자열 보간법을 사용하고 MIME 유형을 동적으로 결정하기 위해 모델에 ImageType
속성(예: "jpeg", "png", "gif")이 포함되어 있다고 가정합니다.
위 내용은 데이터베이스 액세스 없이 ASP.NET MVC에서 바이트 배열 이미지를 표시하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!