Дизайнер WPF не загружается в бета-версии VS 11

У меня возникает странная ошибка с дизайнером Visual Studio 11 beta WPF (т. е. Google не возвращает никаких результатов при поиске части трассировки стека)

Вот проблема: когда я создаю проект приложения WPF, а затем добавляю в него окна или пользовательские элементы управления, у меня нет проблем с их редактированием во встроенном дизайнере WPF. Но когда я создаю проект пользовательского управления WPF, мне не удается заставить его работать: у меня есть странная ошибка, которую я вставил ниже.

Я ориентируюсь на .Net 4.5... и мой VS на французском языке (извините). Я вставил текст для этого вопроса, чтобы его можно было найти, а также изображение для удобства чтения.

РЕДАКТИРОВАТЬ: я бы перевел первую часть сообщения об ошибке как (извините за мой английский...) Попытка загрузить сборку из сетевого источника, что подразумевало использование сборки в режиме песочницы в предыдущей версии .Net framework. Поскольку эта версия .Net framework по умолчанию не активирует стратегию CAS, эта загрузка может быть опасной. так далее...

Исключение дизайнера VS

System.NotSupportedException Предварительное взимание платы за сборку с частью установки, которая позволяет избежать использования сборки в режиме Bac (песочнице) в предыдущих версиях .NET Framework. Эта версия .NET Framework активна в соответствии со стратегией CAS по умолчанию, поэтому она может быть опасной. Поскольку зарядка не предназначена для использования сборки в режиме Bac в соболе (песочнице), активизируйте коммутатор loadFromRemoteSources. Дополнительная информация доступна на http://go.microsoft.com/fwlink/?LinkId=155569. à Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.DirectInvoke[T](WaitHandle abort, Func1 func) à Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.MarshalOut[TResult,TValue](RemoteHandle1 targetObject, Func1 func) à Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.MarshalOut[TResult,TValue](RemoteHandle1 targetObject, Func`2 func) à Microsoft.Expression.DesignHost.Isolation.Remoting.LocalDesignerService.Microsoft.Expression.DesignHost .IDesignerService.CreateDesigner(элемент IHostSourceItem, редактор IHostTextEditor) в Microsoft.Expression.DesignHost.IsolatedDesignerService.CreateDesignerViewInfo(IIsolationTargetisolationTarget, элемент IHostSourceItem, редактор IHostTextEditor, CancellationTokenSource cancelSource)

System.NotSupportedException Предварительное взимание платы за сборку с частью установки, которая позволяет избежать использования сборки в режиме Bac (песочнице) в предыдущих версиях .NET Framework. Эта версия .NET Framework активна в соответствии со стратегией CAS по умолчанию, поэтому она может быть опасной. Поскольку зарядка не предназначена для использования сборки в режиме Bac в соболе (песочнице), активизируйте коммутатор loadFromRemoteSources. Дополнительная информация доступна на http://go.microsoft.com/fwlink/?LinkId=155569.

Трассировка стека сервера: в Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.CallQueue.WaitForCompletion(вызов BlockingCall) в Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.CallQueue.Invoke(вызов BlockingCall) в Microsoft.Expression.DesignHost .Isolation.Remoting.ThreadMarshaler.CallQueue.Invoke[T](Func1 func, WaitHandle aborted) at Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.MarshalIn[TResult](IRemoteObject targetObject, Func1 func) в Microsoft.Expression.DesignHost.Isolation.Remoting.RemoteDesignerService.Microsoft.Expression.DesignHost.Isolation.Remoting.IRemoteDesignerService.CreateDesigner(IRemoteHostSourceItem remoteEditem, IRemoteHostEditor) в System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs) в System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)

Исключение повторно сгенерировано в [0]: System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, тип Int32) Microsoft.Expression. DesignHost.Isolation.Remoting.IRemoteDesignerService.CreateDesigner(IRemoteHostSourceItem remoteItem, IRemoteHostTextEditor remoteEditor) в Microsoft.Expression.DesignHost.Isolation.Remoting.LocalDesignerService.‹>c__DisplayClass8.b__7(IRemoteDesignerService d) в Microsoft.Expression.DesignResignReIsolation. .‹>функция c__DisplayClass42.<MarshalOut>b__3() à Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.DirectInvoke[T](WaitHandle abort, Func1)

System.NotSupportedException Предварительное взимание платы за сборку с частью установки, которая позволяет избежать использования сборки в режиме Bac (песочнице) в предыдущих версиях .NET Framework. Эта версия .NET Framework активна в соответствии со стратегией CAS по умолчанию, поэтому она может быть опасной. Поскольку зарядка не предназначена для использования сборки в режиме Bac в соболе (песочнице), активизируйте коммутатор loadFromRemoteSources. Дополнительная информация доступна на http://go.microsoft.com/fwlink/?LinkId=155569. в System.Reflection.RuntimeAssembly.nLoadFile(путь строки, доказательство) в System.Reflection.Assembly.LoadFile(путь строки) в Microsoft.Expression.Utility.AssemblyHelper.LoadFile(путь строки)
в Microsoft.Expression.DesignSurface .Assemblies.AssemblyService.CreateClassicShadowCopy (проект IHostProject, String AssemblySourcePath) в Microsoft.Expression.DesignSurface.Assemblies.AssemblyService.ResolveShadowCopyAssembly (проект IHostProject, путь String) в Microsoft.Expression.DesignSurface.Assemblies.AssemblyService.ResolveAssembly (проект IHost pathProject, ) в Microsoft.Expression.DesignSurface.Assemblies.ProjectAssemblyResolver.GetAssemblyInformation(путь строки) в Microsoft.Expression.DesignSurface.Assemblies.ProjectAssemblyResolver.GetAssemblyInformation(ссылка IHostReferenceItem) в Microsoft.Expression.DesignSurface.Assemblies.ProjectAssemblyResolver.Update(2numerCemblyReferences ТКей key) в System.Collections.Concurrent.ConcurrentDictionary2.GetOrAdd(TKey key, Func2 valueFactory) в Microsoft.Expression.Utility.Collections.SuspendableKeyedCollection2.GetItem(TKey key) at Microsoft.Expression.DesignSurface.Assemblies.ProjectAssemblyService.GetProjectAssemblyResolver(IHostProject project) at Microsoft.Expression.DesignSurface.Project.ProjectContextBase.Initialize() at Microsoft.Expression.DesignSurface.Project.XamlProjectContext.Initialize() at Microsoft.Expression.DesignSurface.Project.ProjectContextManager.GetProjectContext(IHostProject project, IPlatform platform) at Microsoft.Expression.DesignSurface.Project.ProjectContextManager.<GetContextsInActiveSolution>d__20.MoveNext() at Microsoft.Expression.DesignSurface.Project.XamlProjectContext.get_Application() at Microsoft.Expression.DesignSurface.Documents.SceneDocument.GetApplicationDocument(IXamlProjectContext activeContext) at Microsoft.Expression.DesignSurface.Documents.SceneDocument.get_ApplicationSceneDocument() at Microsoft.Expression.DesignSurface.DocumentViewContext.CreateAndOpenView(ISourceItemContext sourceItem, Boolean activate, Boolean ensureOpen) at Microsoft.Expression.DesignSurface.DesignerService.CreateDesigner(IHostSourceItem item, IHostTextEditor editor) at Microsoft.Expression.DesignHost.Isolation.Remoting.RemoteDesignerService.<>c__DisplayClass9.<Microsoft.Expression.DesignHost.Isolation.Remoting.IRemoteDesignerService.CreateDesigner>b__8() at Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.CallQueue.<>c__DisplayClassa1.b__9() в Microsoft.Expression.DesignHost.Isolation.Remoting.ThreadMarshaler.CallQueue.Call.Invoke()


person Olivier    schedule 13.03.2012    source источник
comment
Я думаю, именно поэтому он все еще находится в бета-версии. Сообщите об этой проблеме в Microsoft Tout Suite!   -  person Bernard    schedule 14.03.2012
comment
Обычно это происходит, когда вы пытаетесь получить доступ к сборке, загруженной из Интернета, которую сначала нужно разблокировать. Подробнее см. здесь. В этом особом случае, поскольку это все еще бета-версия, и если не используются пользовательские сборки, я могу предположить, что MS забыла разблокировать свои собственные сборки (что бы это ни было в этом случае).   -  person nik    schedule 14.03.2012
comment
Я думал об этом. Но есть ли способ узнать, какая это может быть сборка? Может ли VS регистрировать это где-нибудь? Я попытался поймать исключение, присоединив другой экземпляр VS к первому, но очевидно, что Microsoft.Expression.DesignHost.dll (dll, вызывающая исключение) оптимизирована, поэтому я не могу собрать информацию о локальных переменных при обнаружении исключения: -/   -  person Olivier    schedule 14.03.2012
comment
К вашему сведению, у продукта еще нет официального названия. Когда это произойдет, это будет не Visual Studio 2011 (прошлый год). 11 в Visual Studio 11 относится к номеру версии (Visual Studio 2010 — версия 10, VS2008 — версия 9).   -  person John Saunders    schedule 20.03.2012


Ответы (1)


Кажется, я исправил ситуацию, включив loadFromSources, как описано здесь:

  1. Перейдите в папку C:\Program Files\Microsoft Visual Studio 11.0\Common7\IDE.
  2. Откройте файлы XDesProc.exe.config, devenv.exe.config и XDesProc.exe.appx.config с помощью текстового редактора (вероятно, требуется режим администратора).
  3. Найдите ‹/runtime› и перед ним добавьте ‹loadFromRemoteSources enabled="true"/› (если вы копируете/вставляете, убедитесь, что двойные кавычки проходят, поскольку ASCII или VS подойдут)

(Источник: http://www.sehajpal.com/index.php/2010/10/how-to-solve-loadfromremotesources-error-in-vs-2010/)

Возможно, только для XDesProc.exe.config это действительно необходимо сделать, не знаю.


После этого я получил другую ошибку: Метод не найден: 'Boolean Microsoft.Windows.Design.PropertyEditing.PropertyFilter.get_IsFiltering()':

Исправление: Скопируйте файл Microsoft.Windows.Design.Interaction.dll из c:\Program Files (x86)\Microsoft Expression\Blend for Visual Studio\Microsoft.Windows.Design.Interaction\ в c:\Program Files (x86)\ Microsoft Visual Studio 11.0\Common7\IDE\PublicAssemblies\ (можно сначала сделать резервную копию существующего файла.)

(Источник: http://connect.microsoft.com/VisualStudio/feedback/details/728263/xaml-editor-reports-unexpected-error-microsoft-expression-designhost-isolation-remoting-remoteexception)

Кто-то из Microsoft сказал, что установка бета-версии поверх предварительной версии для разработчиков не поддерживается, поэтому, возможно, поэтому у меня возникла вторая проблема.

person Jared Thirsk    schedule 05.04.2012
comment
Спасибо ! Решил! (И вы были правы: вторая часть мне не пригодилась) - person Olivier; 09.04.2012
comment
что здесь очень странно, так это то, что это происходит случайно. и теперь все время, несмотря на наличие правильного файла запуска .config. эта модель безопасности является катастрофой. - person nicolas; 04.05.2012
comment
Я добавил это ко всем упомянутым конфигурациям XDesProc.exe.config, devenv.exe.config и XDesProc.exe.appx.config, и это сработало. Если вы ответите на мой вопрос здесь, я дам вам несколько баллов stackoverflow.com/questions/10224585/ - person nicolas; 06.08.2012