В Visual Studio НЕ передаются Keys `project.Variables.Keys`

  • Автор темы Автор темы ZSharp
  • Дата начала Дата начала

ZSharp

Client
Регистрация
29.09.2013
Сообщения
426
Реакции
136
Баллы
43
Привет.
Зенка 7.7.3.0, подключил проект к VisualStudio, переменные доступны, а вот project.Variables.Keys почему-то null.

Переменная есть, и её значение тоже
C#:
Развернуть Свернуть Копировать
project.SendInfoToLog(project.Variables["Login"].Value);

Падает с ошибкой в обоих случаях
C#:
Развернуть Свернуть Копировать
if (project.Variables.Keys.Contains("Login"))
{
                
}

foreach (var item in project.Variables.Keys)
{

}

Проверяю Keys а он null
C#:
Развернуть Свернуть Копировать
if (project?.Variables?.Keys != null)
{
    project.SendInfoToLog("Keys НЕ NULL");
}
else
{
    project.SendInfoToLog("Keys NULL");
}

Кто-то сталкивался?
Это баг? Или опять особенность?
 
Проверил, у меня тоже null в VS
 
  • Оценить
Реакции: ZSharp
Надо было создать переменные в проекте и я был послан нахер с тремя днями работы.... По итогу забил на проекты в студии...
 
По итогу забил на проекты в студии...
Это уже 4-й раз, как я пытаюсь начать работать через VisualStudio.
Опять день потерян, и всё время находятся какие-то детские но фундаментальные проблемы.

Документация вот так хвалит эту возможность
Экшен “Проект Visual Studio” позволяет использовать в проекте ZennoPoster проект созданный в среде Microsoft Visual Studio 2019 и тем самым открывает неограниченные возможности для написания, отладки кода и подключения внешних библиотек.
Невозможно даже проверить существование переменной - это конечно "неограниченные возможности".

Получается что Экшен “Проект Visual Studio” просто красивая реклама, а на самом деле тестировать эти объекты никак не возможно.
Если даже объект project не полон, то что говорить о instance.

Не все объекты передаются в VS.
Очень странно.
Вообще стоит ждать обновления плагина, который все объекты будет передавать?
И сколько вообще пользователей используют плагин ZennoPosterToolWindow?
 
Это уже 4-й раз, как я пытаюсь начать работать через VisualStudio.
Опять день потерян, и всё время находятся какие-то детские но фундаментальные проблемы.

Документация вот так хвалит эту возможность

Невозможно даже проверить существование переменной - это конечно "неограниченные возможности".

Получается что Экшен “Проект Visual Studio” просто красивая реклама, а на самом деле тестировать эти объекты никак не возможно.
Если даже объект project не полон, то что говорить о instance.


Очень странно.
Вообще стоит ждать обновления плагина, который все объекты будет передавать?
И сколько вообще пользователей используют плагин ZennoPosterToolWindow?
Постоянно в студии проекты пишу, проблем нет, не в зенке же их писать ) единственное что некоторые моменты приходится реализовывать самому с нуля.
 
  • Оценить
Реакции: Dmitriy Ka
Постоянно в студии проекты пишу, проблем нет, не в зенке же их писать ) единственное что некоторые моменты приходится реализовывать самому с нуля.
Через плагин? Полноценный проект? Полностью проект отрабатывает в VS как в зенке?
Или тестирование кубика в 5 строк как вот здесь? https://zennolab.com/discussion/thr...gotovka-vs-dlja-raboty-s-proektami-zp.108665/

Я тоже в студии пишу, но с заглушками от project, когда работает в VS.
Всё ничего пока не нужен браузер. Если бы не браузер, то нафиг и нужно это подключение.
 
Через плагин? Полноценный проект? Полностью проект отрабатывает в VS как в зенке?
Или тестирование кубика в 5 строк как вот здесь? https://zennolab.com/discussion/thr...gotovka-vs-dlja-raboty-s-proektami-zp.108665/

Я тоже в студии пишу, но с заглушками от project, когда работает в VS.
Всё ничего пока не нужен браузер. Если бы не браузер, то нафиг и нужно это подключение.
Полностью в vs, с с пространствами имён, десятками классов и сотнями методов, все это дело упаковано в dll (не средствами зенки) и в ПМ у меня 1 кубик с этой dll и все. Единственная проблема, это остановить такой проект во время выполнения в зенопостере, т.к зенка не может остановиться пока кубик не выполнит, а там весь проект это 1 кубик, над этим я ещё думаю)
 
Sherminator
Без обид, но я уже почти не реагирую на сообщения "я работаю и у меня все ок". Тут 90% работают в 3 кубика и пишут что все у них работает. Ну вот тебе пример в 1 строчку кода который не работает.
Давай ради интереса, посмотри содержимое и напиши здесь, что по твоему должно произойти. А потом добавь плагин, запусти main и main2. Спорим что неожиданно будет?)
 

Вложения

  • Оценить
Реакции: ZSharp
Sherminator
Без обид, но я уже почти не реагирую на сообщения "я работаю и у меня все ок". Тут 90% работают в 3 кубика и пишут что все у них работает. Ну вот тебе пример в 1 строчку кода который не работает.
Давай ради интереса, посмотри содержимое и напиши здесь, что по твоему должно произойти. А потом добавь плагин, запусти main и main2. Спорим что неожиданно будет?)
Время будет гляну, заинтриговал )
 
Давай ради интереса, посмотри содержимое и напиши здесь, что по твоему должно произойти. А потом добавь плагин, запусти main и main2. Спорим что неожиданно будет?)
Ждал чего-то неожиданного :D
А так это эта же проблема детская, но фундаментальная.
Вот чтобы таких проблем не было, я пытался их искать не только через Keys, а пробовал project.Variables.Select(x => x.Key).ToList(), но и так не работает.
 
Или тестирование кубика в 5 строк как вот здесь? https://zennolab.com/discussion/thr...gotovka-vs-dlja-raboty-s-proektami-zp.108665/
Похоже Вы плохо прочитали статью и не поняли главного смысла который там закладывался. А 5 строчек кода это пример, там может быть и 1000 строк кода.

Я уже больше полугода пишу код для проектов ZP только через VS и кайфую на сколько проще писать и дебажить код :-)
Если Вы пишите код для ZP через VS, у вас должен быть открыт и ZP и VS, чтобы можно было полноценно работать
 
Похоже Вы плохо прочитали статью и не поняли главного смысла который там закладывался. А 5 строчек кода это пример, там может быть и 1000 строк кода.

Я уже больше полугода пишу код для проектов ZP только через VS и кайфую на сколько проще писать и дебажить код :-)
Если Вы пишите код для ZP через VS, у вас должен быть открыт и ZP и VS, чтобы можно было полноценно работать
А можно писать не открывая их вместе ?) Это что за мазахизм...
 
А можно писать не открывая их вместе ?) Это что за мазахизм...
Правильно... нафиг нам нужен этот постер... даешь разработку/отладку и запуск проектов в VS вообще без садомозопостера :D
 
  • Оценить
Реакции: ZSharp
Sherminator
Без обид, но я уже почти не реагирую на сообщения "я работаю и у меня все ок". Тут 90% работают в 3 кубика и пишут что все у них работает. Ну вот тебе пример в 1 строчку кода который не работает.
Давай ради интереса, посмотри содержимое и напиши здесь, что по твоему должно произойти. А потом добавь плагин, запусти main и main2. Спорим что неожиданно будет?)
в main нет переменной TestVar получаем Exseption, в main2 есть переменная и ее данные выводятся в лог :-)
И что тут неожиданного, кроме того как тупо это все реализовано?:D
 
Если пишем dll то можно, а если пишем код для кубиков C# то обязательно:-)
Понял, если я ничего не путаю то без запущенного ПМ не получится обратиться не к инстансу не к проджект
 
в main нет переменной TestVar получаем Exseption, в main2 есть переменная и ее данные выводятся в лог :-)
И что тут неожиданного, кроме того как тупо это все реализовано?:D
А может то, что переменная TestVar указана в плагине как принимающая настройки и должна в плагине обрабатываться как переменная из плагина а не из основного шаблона искать переменную? А может то что кубик
103538
выводит одно, а
C#:
Развернуть Свернуть Копировать
project.SendInfoToLog($"Вывод из vs proj: {project.Variables["TestVar"].Value}", true);
другое?
 
Похоже Вы плохо прочитали статью и не поняли главного смысла который там закладывался. А 5 строчек кода это пример, там может быть и 1000 строк кода.

Я уже больше полугода пишу код для проектов ZP только через VS и кайфую на сколько проще писать и дебажить код :-)
Если Вы пишите код для ZP через VS, у вас должен быть открыт и ZP и VS, чтобы можно было полноценно работать
Почитал статью, бред полный
 
А может то, что переменная TestVar указана в плагине как принимающая настройки и должна в плагине обрабатываться как переменная из плагина а не из основного шаблона искать переменную? А может то что кубик
Посмотреть вложение 103538
выводит одно, а
C#:
Развернуть Свернуть Копировать
project.SendInfoToLog($"Вывод из vs proj: {project.Variables["TestVar"].Value}", true);
другое?
А что код выводит? С телефона скомпилировать не получается ...
 
Понял, если я ничего не путаю то без запущенного ПМ не получится обратиться не к инстансу не к проджект
Можно, но их надо будет прокидывать, а если работаем в VS через метод Execute они уже прокинуты и мы можем к ним без проблем обращаться
 
Можно поподробней, в чем бред?
Вы же в курсе что в солюшене можно сколько угодно классов насоздавать понаписать в них сколько угодно методов и кода с использованием проджекта и инстанса и при этом из метода экзекьют при создании экземпляра класса передать в конструктор и проджект и инстанс и уже в своем самопальном классе и самопальных методах пользоваться и инстанслм и проджектом ?
 
А может то, что переменная TestVar указана в плагине как принимающая настройки и должна в плагине обрабатываться как переменная из плагина а не из основного шаблона искать переменную? А может то что кубик
Посмотреть вложение 103538
выводит одно, а
C#:
Развернуть Свернуть Копировать
project.SendInfoToLog($"Вывод из vs proj: {project.Variables["TestVar"].Value}", true);
другое?
Я с плагинами не работал и не знаю как они работают, но то что ошибки выдали результат который я ожидал, говорит о том что я правильно думаю :-)
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)