Вот как вы можете выводить строку подключения из вашего appsettings.json в свой вид.
Сначала это как моя строка соединения определяется в appsettings.json
"database": {
"connection": "Data Source=.;Initial Catalog=OdeToFood;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"
}
Создать класс для хранения в строке соединения
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace CoreTest
{
public class AppSettings
{
public string connection { get; set; }
}
}
Update в startup.cs file
Убедитесь, что конструктор читает настройки.JSON файл
public Startup(IHostingEnvironment env)
{
var builder = new ConfigurationBuilder()
.SetBasePath(env.ContentRootPath)
.AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true)
.AddEnvironmentVariables();
Configuration = builder.Build();
}
Добавьте эти строки в ConfigureServices
services.AddOptions();
services.Configure<AppSettings>(Configuration.GetSection("database"));
обновления контроллера
public class HomeController : Controller
{
private AppSettings _AppSettings;
public HomeController(IOptions<AppSettings> settings)
{
_AppSettings = settings.Value;
}
Добавить метод контроллера
public async Task ContentAction()
{
var constr = _AppSettings.connection;
var jsonString = "{\"connectionString\""+ constr + "}";
byte[] data = Encoding.UTF8.GetBytes(jsonString);
Response.ContentType = "application/json";
await Response.Body.WriteAsync(data, 0, data.Length);
}
Вызовите метод контроллера с вашей точки зрения
<div>
<a asp-controller="Home" asp-action="ContentAction" class="btn btn- success confirmCreate">
Generate Response
<i class="fa fa-angle-left"></i>
</a>
</div>
Вывести строку соединения
{"connectionString"Data Source=.;Initial Catalog=OdeToFood;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False}
Вы должны опубликовать соответствующий код. –
Немного улучшенное форматирование –
привет Яз. Когда вы говорите: «Я могу создать новую запись, и она будет спасена». как вы доказали, что запись была сохранена? Вы остановили приложение, перезапустили его, а затем извлекли запись? –