일부 값을 레지스트리에 저장하는 C# .net 코드를 작성 중입니다. 일부 바이너리 데이터를 저장하기 전까지는 정상적으로 작동했습니다. MyType
이 보이는 곳 직렬화 가능 객체를 .net의 레지스트리에 저장 하시겠습니까?
List<MyType>
개체가 :
List<MyType> objectToSaveInRegistry = getList();
RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(MySpecialKey, true);
registryKey.SetValue("MySpecialValueName", objectToSaveInRegistry , RegistryValueKind.Binary);
오류는 다음과 같습니다 :
[Serializable] public class MyType
{
public string s {get;set;}
public string t {get;set;}
}
다음 코드에 오류 얻을 "값 개체의 유형을했다 지정된 레지스트리 ValueKind와 일치하지 않거나 개체를 제대로 변환 할 수 없습니다. "
개체를 레지스트리에 저장할 수 있도록하려면 어떻게해야합니까?
왜 레지스트리 파일에 저장하고 싶습니까? XML 파일로 저장하지 마십시오. –
@Srinivas, 내 개체 개발중인 응용 프로그램의 구성에 대한 정보가 들어 있습니다. Windows 레지스트리가 응용 프로그램 설정을 저장할 수있는 장소가 아니 었습니까? –
기본적으로 바이트 배열이 필요한 메서드에 목록을 전달하려고합니다. 그런 종류의 표현으로 목록을 변환해야합니다 (MemoryStream으로 직렬화하거나 다른 직렬기를 사용하여). –
Joe