これは狂ったエラーではありませんか?Visual Studio 2010 Windowsフォームデザイナの問題
別のasseblyからUserControlsを含むフォームを開き、ビジュアルスタジオデザイナでEntity FrameworkとSQL CEを使用しようとすると、これが発生します。
オブジェクト型Namespace.T []は、型名前空間に変換できません。[] !!!
コールスタック:System.RuntimeType.CheckValueでSystem.RuntimeType.TryChangeTypeで
(Object値、バインダーバインダー、CultureInfoカルチャ、ブールneedsSpecialCast)(Object値、バインダーバインダー、CultureInfoカルチャ、のBindingFlags invokeAttr)でSystem.Runtime.Serialization.FormatterServices.SerializationSetValue(MemberInfo fi、Object target、Object value)at System.Reflection.RtFieldInfo.InternalSetValue(Object obj、Object value、BindingFlags invokeAttr、バインダーバインダー、CultureInfoカルチャ、ブールdoVisibilityCheck、ブールdoCheckConsistency) SystのSystem.Runtime.Serialization.ObjectManager.DoNewlyRegisteredObjectFixups(ObjectHolderホルダー、Boolean bObjectFullyComplete)のSystem.Runtime.Serialization.ObjectManager.CompleteObject System.Runtime.Serialization.Formatters.Binary.ObjectReader.RegisterObject(Object obj、ParseRecord pr)でem.Runtime.Serialization.ObjectManager.RegisterObject(Object obj、Int64 objectID、SerializationInfo情報、Int64 idOfContainingObj、MemberInfoメンバ、Int32 [] arrayIndex) 、ParseRecord objectPr、Boolean bIsString)System.Runtime.Serialization.Formatters.Binary.ObjectReader.ParseObjectEnd(ParseRecord pr)at System.Runtime.Serialization.Formatters.Binary.ObjectReader.Parse(ParseRecord pr)at System.Runtime.Serialization。 System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandlerハンドラ、__BinaryParser serParser、ブールfCheck、ブールisCrossAppDomain、IMethodCallMessage methodCallMessage)のFormatters.Binary .__ BinaryParser.Run()。 System.Runtime.SeのBinaryFormatter.Deserialize(ストリームserializationStream、HeaderHandlerハンドラ、ブールfCheck、ブール値isCrossAppDomain、IMethodCallMessage methodCallMessage) System.Resources.ResXDataNode.GenerateObjectFromDataNodeInfo(DataNodeInfo dataNodeInfo、ITypeResolutionService typeResolver)でSystem.Resources.ResXDataNode.GetValue(ITypeResolutionService typeResolver)のrialization.Formatters.Binary.BinaryFormatter.Deserialize(ストリームのシリアル化ストリーム)をSystem.Resources.ResXResourceReader.ParseDataNode(XmlTextReader reader、Boolean isMetaData)System.Resources.ResXResourceReader.ParseXml(XmlTextReaderリーダー)
ただし、同じ名前の型です。
プロジェクトは正常に構築され、正常に実行されます。
OKフォームの.resxファイルを削除しました。これで2つのエラーが表示されてしまいました。 System.Data.EntityClient.EntityConnection.ChangeConnectionString(文字列newConnectionStringで
:
第一は、「指定された名前の接続、EntityClientプロバイダで使用することを意図していない、または有効でない」
コールスタックであります)DJProのSystem.Data.Objects.ObjectContext..ctor(String connectionString、String defaultContainerName)のSystem.Data.Objects.ObjectContext.CreateEntityConnection(String connectionString)のSystem.Data.EntityClient.EntityConnection..ctor(String connectionString) D:\ Visual Studio Projects \ DJProAutomation \ DJPro.Settings.Model \ SettingsSelfTrackModel.Context.csの.Settings.Model.SettingsEntities..ctor():33行目DJPro.Data.Access.SettingsDataOperations.GetConfiguration()(D:\ Visual Studioプロジェクト\ DJProAutomation \ DJPro.Data.Access \ SettingsDataOperations.cs):33行目のDJPro.Studio.Controls.DeckControl..ctor() \ Visual Studio Projects \ DJProAutomation \ DJPro.Deck.Controls \ DeckControl。cs:行51
第2回は私が図書館で持っているコントロールについてです。
コールスタック "変数deckControl1が宣言されていないか、割り当てられていなかったのどちらかである":でSystem.ComponentModel.Design.Serialization.CodeDomSerializerBase.Error(IDesignerSerializationManagerマネージャー、文字列exceptionText、文字列HELPLINK)で
をSystem.ComponentModel.DesignのSystem.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializeExpression(IDesignerSerializationManagerマネージャ、StringName、CodeExpression式)のSystem.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializeExpression(IDesignerSerializationManagerマネージャ、文字列名、CodeExpression式)。 Serialization.CodeDomSerializ erBase.DeserializeStatement(IDesignerSerializationManagerマネージャ、CodeStatement文)
次に、resxファイルのバックアップから復元して、最初の問題に戻ってきます。
このように奇妙なエラーは、Entity Data Modelライブラリではすべて問題なく、app.configにはすべての必要な接続文字列があります。 deckControl1 UserControlについては、ライブラリにはうまく見えますが、作成してOKです。
私はこれが私を狂ってしまい、開発を中止すると思います。
私はコード内で使用するプロパティをresxファイルから削除しました。このように動作しますが、まだ完全にはテストされていません。 –