Код, показанный ниже, работает в .net 4.6.2, и он работает в режиме отладки для .net 8. < /p>
Код, однако, сбой после этого, он опубликован как один файл И когда я пытаюсь запустить его. Исключение - < /p>
Метод набора свойств, не найденный < /p>
< /blockquote>
код: < /p >
///
/// This gets called at startup. The point of this is to prevent us from
/// making everything a const with [General.Yes = "General.Yes"]. Saves a step in
/// development that was getting annoying.
///
public static void SetupKeys()
{
var thisNamespace = typeof( TranslationKeys ).Namespace;
var thisName = nameof( TranslationKeys );
var fullNameStart = string.Concat( thisNamespace, ".", thisName, "+" );
var classes = Assembly.GetExecutingAssembly()
.GetTypes()
.Where( t => t.IsClass && t.IsNested && t.FullName != null && t.FullName.StartsWith( fullNameStart ) );
foreach (var c in classes)
{
var className = c.Name;
var props = c.GetProperties();
foreach (var p in props)
{
var propName = p.Name;
p.SetValue(null, string.Concat(className, ".", propName), BindingFlags.NonPublic, );
}
}
}
///
/// Things that we will use all over the place.
///
public static class General
{
public static string Yes { get; private set; } = string.Empty;
}
< /code>
Я просто наткнулся на это. Поскольку проблема возникает после упаковки, единственное, что я могу сейчас сделать, - это добавить несколько операторов журнала, но мы знаем, что ошибка - это «метод набора свойств, не найденные», и мы знаем, что это значит. Итак ... что теперь?
Подробнее здесь: https://stackoverflow.com/questions/794 ... is-publish
C# .net 8 Reflection не устанавливает свойство, когда приложение опубликовано ⇐ C#
Место общения программистов C#
1738347442
Anonymous
Код, показанный ниже, работает в .net 4.6.2, и он работает в режиме отладки для .net 8. < /p>
Код, однако, сбой после этого, он опубликован как один файл И когда я пытаюсь запустить его. Исключение - < /p>
Метод набора свойств, не найденный < /p>
< /blockquote>
код: < /p >
///
/// This gets called at startup. The point of this is to prevent us from
/// making everything a const with [General.Yes = "General.Yes"]. Saves a step in
/// development that was getting annoying.
///
public static void SetupKeys()
{
var thisNamespace = typeof( TranslationKeys ).Namespace;
var thisName = nameof( TranslationKeys );
var fullNameStart = string.Concat( thisNamespace, ".", thisName, "+" );
var classes = Assembly.GetExecutingAssembly()
.GetTypes()
.Where( t => t.IsClass && t.IsNested && t.FullName != null && t.FullName.StartsWith( fullNameStart ) );
foreach (var c in classes)
{
var className = c.Name;
var props = c.GetProperties();
foreach (var p in props)
{
var propName = p.Name;
p.SetValue(null, string.Concat(className, ".", propName), BindingFlags.NonPublic, );
}
}
}
///
/// Things that we will use all over the place.
///
public static class General
{
public static string Yes { get; private set; } = string.Empty;
}
< /code>
Я просто наткнулся на это. Поскольку проблема возникает после упаковки, единственное, что я могу сейчас сделать, - это добавить несколько операторов журнала, но мы знаем, что ошибка - это «метод набора свойств, не найденные», и мы знаем, что это значит. Итак ... что теперь?
Подробнее здесь: [url]https://stackoverflow.com/questions/79403648/c-sharp-net-8-reflection-is-failing-to-set-property-when-application-is-publish[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия