Проблема при запуске сервера

RedPo

Новый участник
31 Дек 2021
16
0
8
При попытке запуска сервера вылазиет данная ошибка.


unknown.png
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,766
1,574
211
28
Я, конечно, не уверен, но на сервере, если используется C#, как в твоём случае, должен быть собранный проект (то есть .dll), а ты пытаешься скормить файл проекта .cs.
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,766
1,574
211
28

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,766
1,574
211
28
Ты можешь напрямую в xml проекта своего прописать пути к каждому файлу и забыть про компил
А в чём плюс данного метода? Не вижу ни 1 преимущества перед полностью собранным проектом.
 

NightWill

Активный участник
15 Сен 2020
113
35
106
А в чём плюс данного метода? Не вижу ни 1 преимущества перед полностью собранным проектом.
По сути, плюсов и разницы нет, только проект не собираешь и таким образом делай хоть в блокноте :D
 

RedPo

Новый участник
31 Дек 2021
16
0
8
Я, конечно, не уверен, но на сервере, если используется C#, как в твоём случае, должен быть собранный проект (то есть .dll), а ты пытаешься скормить файл проекта .cs.
Я не знаю как собрать тогда проект в длл. Подскажешь?
 

DaVilka

Старожил
BackEnd developer
16 Сен 2020
761
276
128

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,766
1,574
211
28
Я не знаю как собрать тогда проект в длл. Подскажешь?
Открываешь проект в своей среде (Я, например, пользуюсь Visual Studio 2019 Community), сверху есть кнопка 'Сборка', внутри 'Собрать решение'. При этом желательно ставить конфигурацию 'Release x64', потому что х86 бессмысленно, сейчас все системы на машинах под серваки на 64 битах (ибо 32 (86) битная система не поддерживает более 4гб оперативной памяти), когда проект успешно собирается - снизу будет вывод пути, где находится готовый файл .dll, его и нужно использовать так же, как ты используешь сейчас .cs, записать в мете и правильно расположить.
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,766
1,574
211
28
По сути, плюсов и разницы нет, только проект не собираешь и таким образом делай хоть в блокноте :D
Ну как разницы нет. При полной самостоятельной сборке ты заранее можешь видеть все ошибки в проекте, плюс неизвестно какая конфигурация сборки будет через рейдж? Да и безопасность в плане чтения исходного кода третьими лицами, если что, какая-никакая у собранного проекта на 0.001% получше xD (ясное дело, что его точно так же можно разобрать и смотреть). Я бы никогда не выбирал такой вариант, хз.
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,766
1,574
211
28
При попытке запуска сервера вылазиет данная ошибка.


Посмотреть вложение 3481
При этом ошибка, кстати, очевидно даже написана:
'Some assemblies are not fully loaded from memory at runtime, you may have to copy your assembly into 'runtime\' folder
В проекте ты можешь использовать дополнительные сборки из NuGet'а, например, которые сами уже являются dll'ками. Так вот они у тебя должны лежать в папке dotnet/runtime/, как говорит ошибка. То есть проблема в том, что твоя сборка не может сбилдиться без сборок, которые присутствуют в коде.
Пример:
Если в своём коде на сервере ты используешь jsonnewtonsoft, то у него есть своя dll'ка, которая уже скачена на твоем пк из nuget'а (можно найти её на своём пк) и она должна лежать в папке, которую я писал выше.
 

RedPo

Новый участник
31 Дек 2021
16
0
8
Открываешь проект в своей среде (Я, например, пользуюсь Visual Studio 2019 Community), сверху есть кнопка 'Сборка', внутри 'Собрать решение'. При этом желательно ставить конфигурацию 'Release x64', потому что х86 бессмысленно, сейчас все системы на машинах под серваки на 64 битах (ибо 32 (86) битная система не поддерживает более 4гб оперативной памяти), когда проект успешно собирается - снизу будет вывод пути, где находится готовый файл .dll, его и нужно использовать так же, как ты используешь сейчас .cs, записать в мете и правильно расположить.
Хорошо попробую
 

RedPo

Новый участник
31 Дек 2021
16
0
8
При этом ошибка, кстати, очевидно даже написана:
'Some assemblies are not fully loaded from memory at runtime, you may have to copy your assembly into 'runtime\' folder
В проекте ты можешь использовать дополнительные сборки из NuGet'а, например, которые сами уже являются dll'ками. Так вот они у тебя должны лежать в папке dotnet/runtime/, как говорит ошибка. То есть проблема в том, что твоя сборка не может сбилдиться без сборок, которые присутствуют в коде.
Пример:
Если в своём коде на сервере ты используешь jsonnewtonsoft, то у него есть своя dll'ка, которая уже скачена на твоем пк из nuget'а (можно найти её на своём пк) и она должна лежать в папке, которую я писал выше.
Спасибо помог