С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual Studio, VS Code
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 15.06.2016
Сообщений: 11
VS 2015

Откуда взялся ServiceLocator?!

15.06.2016, 17:50. Показов 1931. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Есть мой ноут и служебный. На обоих установлена Visual Studio Community 15 (32 бит).
На моём Windows 10 (32 бит), на служебном - Windows 10 (64 бит).
На моём ноуте приложение запускается и начинает правильно выполняться, а на служебном это же скопированное решение выдаёт форму "Найти исходный код ServiceLocator.cs". Такого файла на обоих компьютерах нет! Почему на служебном ноуте VS во время компиляции понадобился этот файл?!!

Четыре раза переустанавливал VS - без результата. Сейчас готовлю себя к мысли о чистой переустановке служебного ноута, чего очень не хочется. Может быть в консерватории (системных настройках) что-то подправить?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.06.2016, 17:50
Ответы с готовыми решениями:

Откуда взялся прокси?
Я как-то оказался за прокси, не знаю как, и не знаю как определить откуда он взялся, пров подсунул или у меня что, подскажите в общем как...

Откуда взялся ноль?
В самоучителе задан такой синтаксис: if a = 28 then WriteLn(f) else k:= 44; на этого синтаксиса составил программу. uses...

Откуда взялся пароль?
Здравствуйте, тут такая проблема. Вобщем, у меня на ноутбуке откуда-то взялся пароль. Поставить никто не мог. И вот что странно, у меня...

12
Master of Orion
Эксперт .NET
 Аватар для Psilon
6101 / 4957 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
15.06.2016, 17:54
Лучший ответ Сообщение было отмечено tezaurismosis как решение

Решение

ssn1, не путайте сборку и запуск по дебагом. Если вы соберете проект, то он соберется или выдаст ошибку сборки, если файлов недостаточно.

Если файлов достаточно, то он соберется, и потом можно запустить. Подобная фигня возникает, когда вы пытаетесь отладить библиотеку (у вас ведь используется какой-то контейнер типа инверсий зависимости и т.п., через который вы создаете объекты?), то эта фигня и возникает. Можно просто нажать "cancel" на этом диалоге просто, и тогда он не будет его отлаживать. Но не уверен, что вам нужно отлаживать чужую библиотеку.

Проверьте кстати галки "enable just my code", она должна быть включена.

Добавлено через 40 секунд
ssn1, и кстати не путайте студию 15 и 2015. если у вас просто 15 (которая бета), то ошибкам удивляться не стоит.
1
0 / 0 / 0
Регистрация: 15.06.2016
Сообщений: 11
15.06.2016, 20:16  [ТС]
Спасибо за такой быстрый ответ!! Не ожидал!

Когда нажимаю "Отмена" на форме с несуществующим файлом (и несуществующим путём к нему), то возникает исключение времени выполнения: ServiceLocatorProvider must be set и всё зависает.

Само решение состоит из 14-ти сборок и 21 NuGet пакетов. В его разработке я не участвовал и контакта с авторами не имею. У меня стоят VS 2015.

На обоих ноутах галка "Включить только мой код" была выключена. Включил - не помогло.

На своём ноуте я собрал решение и запустил его под дебагом - всё пошло хорошо. После этого всё решение через флэшку скопировал на служебный ноут и без пересборки также запустил под дебагом - пошёл запрос Сервис локатора...

ЗЫ
Насчёт "не помогло" беру паузу - надо же пересобрать в таком режиме!

Добавлено через 8 минут
ЗЫЗЫ
Помогло!!!
Сервис локатор пропал!
И появилась другая ошибка. Но это уже совсем другая история...
Спасибо!!

Добавлено через 1 час 44 минуты
Рано я радовался! :-((

Когда я игнорировал новое исключение, следующим появилось то с сервислокатором...
Это повторилось после компиляции и пересборки решения на моём ноуте и простым запуском компиляции на служебном.

Когда же я пересобрал поочереди все сборки на служебном ноуте, то одна не собралась и выдала такие две ошибки:

13>C:\...\Projects\TTTT\TTTT.Main\obj\x8 6\Debug\Views\Measurement\Diagrams.g.cs( 26,22,26,35): error CS0234: Тип или имя пространства имен "Interactivity" не существует в пространстве имен "System.Windows" (возможно, отсутствует ссылка на сборку).
13>C:\...\Projects\TTTT\TTTT.Main\obj\x8 6\Debug\Views\Measurement\Diagrams_.g.cs (26,22,26,35): error CS0234: Тип или имя пространства имен "Interactivity" не существует в пространстве имен "System.Windows" (возможно, отсутствует ссылка на сборку).

Как же это получается у служебного ноута портить нормально собранное решение?!!
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6101 / 4957 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
15.06.2016, 20:18
Лучший ответ Сообщение было отмечено ssn1 как решение

Решение

ssn1, у вас какая-то зависимость не разрешилась. Проверьте настройки нугета на одном компе и другом: %appdata%\NuGet\NuGet.Config
1
0 / 0 / 0
Регистрация: 15.06.2016
Сообщений: 11
16.06.2016, 10:38  [ТС]
Да, проблема была в настройках нугет пакетов. На служебном ноуте Win 10 (64 bit), два раздела Programm Files и разные места хранения пакетов, которые требуют отдельных настроек.

Решил на служебном ноуте сделать чистую установку Win 10 (32 bit), чтобы на обоих ноутах все настройки были одинаковыми.

Спасибо!!
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6101 / 4957 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
16.06.2016, 10:49
ssn1, переставлять винду чтобы настроить нугет это сурово
0
0 / 0 / 0
Регистрация: 15.06.2016
Сообщений: 11
16.06.2016, 12:57  [ТС]
:-)

Настройка нугета - это серъёзный повод, чтобы, наконец-то, накатить чистую винду и на служебный, и на личный ноут!

Без такого повода эти процессы постоянно откладывались. :-)
0
0 / 0 / 0
Регистрация: 15.06.2016
Сообщений: 11
21.06.2016, 16:05  [ТС]
Сделал чистую установку Win 10 на служебный ноут - не помогло. Те же ошибки... :-((

Хуже того, оказалось, что эти же ошибки появляются и на личном ноуте, если пытаться пересобирать TTTT.Main!!
А я ранее пересобирал всё решение, а потом запускал всё приложение. Видимо, оно запускалось на старом TTTT.exe и не выдавало ошибки. А на служебном даже решение не пересобирается...

Начал сравнивать ссылки. Оказалось, что на служебном ноуте отсутствует сборка Microsoft.VisualStudio.Tools.Office.Runt ime.v10.0. Ссылка на неё есть, а самой сборки - нет. На личном же ноуте эта сборка находится в глобальном кэше.
На служебном ноуте пробовал найти её в нугет-пакетах - нет таких. Решил скопировать эту сборку из кэша личного ноута в кэш служебного. Но, как я понял, простым копипастом не получится.

Как мне это сделать с помощью gacutil? Как её извлечь (скопировать из глобального кэша личного ноута?
0
Master of Orion
Эксперт .NET
 Аватар для Psilon
6101 / 4957 / 905
Регистрация: 10.07.2011
Сообщений: 14,522
Записей в блоге: 5
21.06.2016, 16:30
ssn1, в смысле скопировать? Зачем копировать? У вас она как-то в GAC попала, нужно чтобы она и на рабочем так же попала.
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
21.06.2016, 16:36
Сборка Microsoft.VisualStudio.Tools.Office.Runt ime.v10.0 является частью Visual Studio Tools for Office, видимо у вас эти tools просто не установлены...
0
0 / 0 / 0
Регистрация: 15.06.2016
Сообщений: 11
21.06.2016, 17:25  [ТС]
Почему сборка не установилась на служебном ноуте - не знаю! Устанавливал на чистую винду из ISO-образа VS. Может там что-то пропустилось? Все нугет-пакеты на обоих ноутах идентичны.

Скопировал эту сборку старым FAR'ом на флэшку (Проводник не хотел копировать), перенёс на служебный ноут и gacutil'ом импортировал в глобальный кэш. Сейчас буду пробовать.

А как гарантированно установить Visual Studio Tools for Office?

Добавлено через 8 минут
Ура!
Ссылка на эту сборку появилась!

А проблема из первого поста осталась: нет ссылки на сборку System.Windows.Interactivity. Но уже для обоих ноутбуков...

В каком нугет пакете прячется эта сборка?
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
21.06.2016, 17:35
System.Windows.Interactivity является частью Expressions Blend SDK, который по идее должен устанавливаться вместе с VS, у меня эта сборка лежит в папке c:\Program Files (x86)\Microsoft SDKs\Expression\Blend\.NETFramework\v4.5 \Libraries.
2
0 / 0 / 0
Регистрация: 15.06.2016
Сообщений: 11
21.06.2016, 19:25  [ТС]
Нашёл!

Более того, случайно :-) обнаружил, что и в обозревателе решений при вставке ссылки эта сборка видна!

Но сделать на неё ссылку из обозревателя решений не получилось.

Как правильно сделать ссылку?

ЗЫ
Кажется придётся по всем конфигурационным файлам настраивать правильную версию этой сборки...

Добавлено через 32 минуты
Победа, вроде, близка, а не получается...

В App.config каждого из 12 модулей решения есть такой код:

<dependentAssembly>
<assemblyIdentity name="System.Windows.Interactivity" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>

Во всех этих модулях в обозревателе решений я наступал на папку "Ссылки", в контекстном меню выбирал "Добавить ссылку", потом нажимал кнопку "Расширения" и выбирал System.Windows.Interactivity 4.0.0.0. и OK.

Пересобирал сборку и решение, но в папке "Ссылки" ссылка на System.Windows.Interactivity не появилась. Были выданы те же ошибки об отсутствии ссылки на System.Windows.Interactivity.

Как надо правильно вставить ссылку?

Добавлено через 36 минут
Импортировал сборку System.Windows.Interactivity из Bland в глобальный кэш - не помогло. Ссылки нет...

Добавлено через 23 минуты
Разобрался!
Ссылку надо вводить с абсолютным путём. Тогда она в решении появляется.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.06.2016, 19:25
Помогаю со студенческими работами здесь

откуда взялся тиц 140
У основного домена есть поддомены с нормальным тИЦ Сам домен не раскручивался, не продвигался.. имеет один бэк.. и тИЦ 140.. С...

Откуда взялся элемент в массиве?
var person = { func: function(name, age, ip) { this.name = name; this.age = age; this.ip = ip; return this } }; ...

Build Error 1. откуда взялся?
в универе простые задачки решали письменно, решила попробовать прогу создать по одной из простеньких что было. вроде все правильно,но...

Как определить откуда взялся PR
На днях вспомнил про сайт который сделал когда то и забыл. У некоторых страниц PR 2 а раньше был 0, я вот не могу никак понять, как...

Откуда взялся этот отступ
Только начал сайт верстать и тут такая проблема, как убрать отступ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru