Visual Studio 2010 Windows Forms Designer Проблемы - PullRequest
0 голосов
/ 01 декабря 2010

Разве это не сумасшедшая ошибка?

Я получаю это, когда пытаюсь открыть форму, содержащую некоторые пользовательские элементы управления из другой сборки, и используя Entity Framework и SQL CE в Visual Studio Designer.

Объект типа Namespace.T [] нельзя преобразовать в тип Namespace.T [] !!!

Стек вызовов:

в System.RuntimeType.TryChangeType (значение объекта, связыватель подшивки, CultureInfoкультура, Boolean needsSpecialCast) в System.RuntimeType.CheckValue (значение объекта, связыватель Binder, культураInfo, культура BindingFlags invokeAttr) в объекте System.Reflection.RtFieldInfo.InternalSetValue (объектный объект, значение объекта, вызов BindingFlags invokeAttr, объект связывания для связывания, механизм связывания), Boolean doCheckConsistency) в System.Runtime.Serialization.FormatterServices.SerializationSetValue (MemberInfo fi, Цель объекта, Значение объекта) в System.Runtime.Serialization.ObjectManager.CompleteObject (держатель ObjectHolder, Boolean bObjectFjectless.RoStemon.Recly.RulylyRomlyComager.DoNewlyRegisteredObjectFixups (держатель ObjectHolder) в System.Runtime.Serialization.ObjectManager.RegisterObject (объектный объект, Int64 objectID, информация SerializationInfo, Int64 idOfContainedObj, член MemberInfo, Int32 [] arrayIndex.Re.Reader.mat.mat..RegisterObject (Object obj, ParseRecord pr, ParseRecord objectPr, логическое bIsString) в System.Runtime.Serialization.Formatters.Binary.ObjectReader.ParseObjectEnd (ParseRecord pr) в System.Runtime.Serialization.Formatters.Binary.PseReReader (ParseReader)) в System.Runtime.Serialization.Formatters.Binary .__ BinaryParser.Run () в System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize (обработчик HeaderHandler, __BinaryParser serParser, логический fCheck, логический метод isCrossAppCallCallCallMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessessMessessMesshossMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMessageMB))))).Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (поток serializationStream, обработчик HeaderHandler, логический fCheck, логический isCrossAppDomain, IMethodCallMessage methodCallMessage) в System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (Stream serializationStream) в System.Resources.ResXDataNode.GenerateObjectFromDataNodeInfo (DataNodeInfoesNesesSeresServiceServer_ResserviceService_Rys)в System.Resources.ResXResourceReader.ParseDataNode (читатель XmlTextReader, Boolean isMetaData) в System.Resources.ResXResourceReader.ParseXml (читатель XmlTextReader)

Но это точно такой же тип проекта!

101 точно строитуспешно и работает нормально !!!

ОК, я удалил .resx файл формы, и теперь я получаю еще 2 ошибки, которые я думал, что прошел.

1-й is "Указанное именованное соединение,не предназначен для использования с поставщиком EntityClient или недействителен "

Стек вызовов:

в System.Data.EntityClient.EntityConnection.ChangeConnectionString (String newConnectionString) в System.Data.EntityClient.EntityConnection..ctor (String connectionString) в System.Data.Objects.ObjectContext.CreateEntityConnection (String connectionString) в System.Data.Objects.ObjectContext..ctor (String connectionString, String defaultContainerName) в DJPro.lets..SettingsEntities..ctor () в D: \ Projects Visual Studio \ DJProAutomation \ DJPro.Settings.Model \ SettingsSelfTrackModel.Context.cs: строка 33 в DJPro.Data.Access.SettingsDataOperations.GetConfiguration () в D: \ Visual Studio Projects\ DJProAutomation \ DJPro.Data.Access \ SettingsDataOperations.cs: строка 33 в DJPro.Studio.Controls.DeckControl..ctor () в D: \ Проекты Visual Studio \ DJProAutomation \ DJPro.Deck.Controls \ DeckControl.cs: строка 51

2nd - это элемент управления, который у меня есть в библиотеке:

"Переменная deckControl1 либо необъявлена, либо ей никогда не присваивалась"

Стек вызовов:

в System.ComponentModel.Design.Serialization.CodeDomSerializerBase.Error (IDesignerSerializationManager manager, String exceptionText, String helpLink) в System.ComponentModel.Design.Serialization.CodeDomSerializerBase.DesrializeExer.ComponentModel.Design.Resx файл и я возвращаюсь к первой проблеме.

Странные ошибки, в библиотеках Entity Data Model все выглядит нормально, и в app.config есть все необходимые строки подключения.Что касается deckControl1 UserControl, то, кажется, для библиотеки все в порядке, я его создал и открывал в порядке.

Я думаю, что это сводит меня с ума и останавливает разработку.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 01 декабря 2010

Похоже, что у вас имеется конфликт версий между сборкой, используемой для генерации ResX, и сборкой, на которую имеется ссылка.

Попробуйте удалить ссылку, повторно добавить ее в качестве ссылки на проект и заново создать ResX.

0 голосов
/ 01 декабря 2010

Обнаружена проблема, если вы используете в конструкторе UserControl код, который инициализирует контекст структуры объекта, возникают проблемы ... даже проблема может возникнуть при попытке инициализировать контекст для операций с данными в обработчике события Load.

Tricky!

...