ASP .NET + Docker в Linux выдает исключение system.io.filenotfoundException: не удалось найти файлC#

Место общения программистов C#
Ответить
Anonymous
 ASP .NET + Docker в Linux выдает исключение system.io.filenotfoundException: не удалось найти файл

Сообщение Anonymous »

У меня возникла ошибка в проекте .NET Web Api, когда я запускаю его с помощью Docker в Linux. Это всего лишь очень маленькая служба электронной почты, которую я хочу разместить. Файл, который выдает ошибку, представляет собой файл шаблона электронной почты в формате HTML, поэтому это файл .html.
Мой сервис работает в режиме отладки в Windwos, а также в докере, работающем в Windows, однако, когда я запустите его на моем веб-сервере и попытайтесь отправить электронное письмо, которое он выдаст

system.io.filenotfoundException: не удалось найти файл
< /blockquote>
относительный путь должен быть в докере:
/app/Templates/email-template.html
Я уже искал решение в Интернете, но не нашел его для себя.
Что я пробовал до сих пор:
a)
Изменение пути в Файл EmailService.cs

Код: Выделить всё

//1st try
Directory.GetCurrentDirectory() + "/Templates/email-template.html"

//2nd try
@"Templates/email-template.html"

//3rd try
@"templates/email-template.html"

//4th try
@"email-template.html"
Из файла докера я попытался скопировать файлы в файл рабочего каталога, потому что прочитал, что, возможно, они не были скопированы во время сборки докера
Я пробовал копировать файлы Docker

Код: Выделить всё

#1
COPY MailService.WebApi/Templates/email-template.html /app/templates/
#2
COPY MailService.WebApi/Templates/email-template.html .
#3
COPY ["MailService.WebApi/Templates/email-template.html", "MailService.WebApi/"]
Я действительно не понимаю, почему он не работает в Linux, поскольку он прекрасно работает в Windows (как в режиме отладки, так и в докере).

Подробнее здесь: https://stackoverflow.com/questions/652 ... ld-not-fin
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»