Ответ 1
Нейл Аллен прав. Сопоставьте папку как диск, и все будет хорошо. Как сопоставить: http://www.online-tech-tips.com/computer-tips/how-to-map-a-drive-in-windows/
Я только что установил Visual Studio 2010 и преобразовал один из моих проектов Visual Studio 2008 WPF для тестирования. Хотя проект строит и работает правильно, VS Designer не может обрабатывать настраиваемые сопоставления пространства имен, которые у меня есть:
Сборка должна быть указана для файлов XAML, которые не являются частью проекта. Повторно запустите этот файл XAML после добавления его в проект, закройте этот файл и откройте его, используя проект, с которым он связан, или измените пространство имен clr, чтобы включить имя сборки.
Эти пространства имен являются частью проекта. В Visual Studio 2008 не было проблем с XAML. Поэтому я создал новый пустой проект WPF под названием Test1
с пространством имен Test1
. Затем я отредактировал созданный MainWindow.xaml, чтобы добавить одно отображение для local
:
<Window x:Class="Test1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Test1"
Title="MainWindow" Height="350" Width="525">
<Grid />
</Window>
Это дает ту же ошибку. И, что удивительно, Google не сообщает результатов об ошибке! Я попробовал несколько вариантов, таких как добавление ;assembly=
или ;assembly=Test1
, но это не помогло.
Может ли кто-нибудь определить, что я делаю неправильно? Если ничего, я бы очень признателен за предложения, почему это может быть неудачным.
Изменить: В соответствии с комментариями выясняется, что это происходит только тогда, когда проект открывается из сетевого ресурса. Это не происходит, если проект открывается на локальном диске. Я хотел бы, однако, иметь возможность открыть его на сетевом ресурсе, поэтому я собираюсь оставить вопрос открытым.
Нейл Аллен прав. Сопоставьте папку как диск, и все будет хорошо. Как сопоставить: http://www.online-tech-tips.com/computer-tips/how-to-map-a-drive-in-windows/
У меня была та же проблема, но я нашел использование сопоставленной буквы диска вместо UNC-пути для меня.
Привет
Нейл Аллен
В связи с этим возникает проблема подключения. В обходных решениях есть ссылка на что-то, что вы можете попытаться добиться: http://connect.microsoft.com/VisualStudio/feedback/details/568464/wpf-project-on-a-network-share-with-clr-namespace#details
Это прямая ссылка на обходной путь; http://msdn.microsoft.com/en-us/library/dd409252.aspx
Просто подведем итог всем ответам на этот пост, потому что эта проблема также была для меня больной, и мне удалось решить ее следующим образом.
Прежде всего, проблема связана с тем, что проект не находится на локальном диске, что создает некоторые проблемы в среде Visual Studio.
Чтобы решить проблему:
Убедитесь, что проект открывается с помощью сопоставленного диска (например, P:/Projects/.../mySolution.sln
). Будьте осторожны, это означает, что отображение диска недостаточно; вам нужно открыть из сопоставленный путь (из окна проводника файлов с помощью сопоставленного диска). Если вы продолжаете загружать его, используя меню "последние проекты" в VS, путь будет по-прежнему абсолютным.
Измените конфигурационный файл среды разработки с именем devenv.exe.config
и добавьте <loadFromRemoteSources enabled="true" />
в раздел configuration/runtime
. Этот файл находится на диске, на котором установлен VS.
Скорее всего, если вы столкнулись с этой проблемой, вы работаете в корпоративной среде, где у вас может быть ограниченный доступ к локальному жесткому диску, что означает, что вы должны попросить отдел ИТ-инфраструктуры внести изменения для вас.
Наконец, я хотел бы добавить, что вы также столкнетесь с проблемами с проектами Unit Test, если вы не используете эту настройку.
Надеюсь, что это поможет.
Аналогичная проблема возникла с некоторыми в нашей компании, потому что мы использовали сетевой ресурс для каждого разработчика.
Проблема не с теми, которые использовали подключенный сетевой диск с сохраненным паролем для перезагрузки.
Это может быть что-то с доменом или средой... и VS плохое обращение с этим?
В моем случае причиной отказа был сетевой путь.