Как доставлять текстовые или двоичные данные в браузер в проекте страниц ASP.NET Core Razor - PullRequest
0 голосов
/ 09 февраля 2019

Используя приведенный ниже код, я ожидал бы просто отобразить строку abcdefg в браузере пользователя.Вместо этого пользователь получает следующий JSON в своем браузере при посещении этой страницы:

{"version":{"major":1,"minor":1,"build":-1,"revision":-1,"majorRevision":-1,"minorRevision":-1},"content":{"headers":[{"key":"Content-Type","value":["text/plain"]}]},"statusCode":200,"reasonPhrase":"OK","headers":[],"requestMessage":null,"isSuccessStatusCode":true}

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;

namespace MyProject.Pages
{
    [Route("api/Mvc")]
    public class MvcController : Controller
    {
        //public IActionResult Index()
        //{
        //    return View();
        //}

        public Task<HttpResponseMessage> Get(int imageid)
        {
            var response = new HttpResponseMessage(HttpStatusCode.OK);
            response.Content = new StringContent("abcdefg");
            response.Content.Headers.ContentType = new MediaTypeHeaderValue("text/plain");

            return Task.FromResult(response);

        }
    }
}

Я новичок в этой платформе и принципиально что-то неправильно понимаю, но мои поиски оказались бесплодными.

В конечном итоге цель этого кода - изменить тип mime на image/jpeg и использовать StreamContent для доставки двоичных данных (изображение jpeg, хранящееся в базе данных).

1 Ответ

0 голосов
/ 09 февраля 2019

Найдено здесь :

Для текста:

    public ActionResult Get(int imageid)
    {
        return Content("abcdefg");
    }

Для двоичного файла:

    public ActionResult Get(int imageid)
    {
        byte[] data = GetData(imageid);
        return File(data, "image/jpeg");
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...