Aracılığıyla paylaş


SYSLIB1037: System.Text.Json Kaynak oluşturucu, seri durumdan çıkarma için desteklenmeyen yalnızca başlatma özelliklerine sahip bir türle karşılaştı

Kaynak System.Text.Json oluşturucu, kayıt türü gibi yalnızca init özelliklerine sahip bir türle karşılaştı. Bu özellikler şu anda seri durumdan çıkarma için kaynak oluşturucu tarafından desteklenmemektedir.

Geçici Çözümler

Yalnızca başlatma özelliklerinin seri durumdan çıkarılması gerekiyorsa yansıma tabanlı JsonSerializer uygulamayı kullanın.

Uyarıları gizleme

Mümkün olduğunda geçici çözümlerden birini kullanmanız önerilir. Ancak, kodunuzu değiştiremiyorsanız, uyarıyı bir #pragma yönerge veya <NoWarn> proje ayarı aracılığıyla gizleyebilirsiniz. SYSLIB1XXX Kaynak oluşturucu tanılaması hata olarak ortaya çıkmazsa, uyarıyı kodda veya proje dosyanızda gizleyebilirsiniz.

Koddaki uyarıları engellemek için:

// Disable the warning.
#pragma warning disable SYSLIB1006

// Code that generates compiler diagnostic.
// ...

// Re-enable the warning.
#pragma warning restore SYSLIB1006

Proje dosyasındaki uyarıları engellemek için:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
   <TargetFramework>net6.0</TargetFramework>
   <!-- NoWarn below suppresses SYSLIB1002 project-wide -->
   <NoWarn>$(NoWarn);SYSLIB1002</NoWarn>
   <!-- To suppress multiple warnings, you can use multiple NoWarn elements -->
   <NoWarn>$(NoWarn);SYSLIB1002</NoWarn>
   <NoWarn>$(NoWarn);SYSLIB1006</NoWarn>
   <!-- Alternatively, you can suppress multiple warnings by using a semicolon-delimited list -->
   <NoWarn>$(NoWarn);SYSLIB1002;SYSLIB1006;SYSLIB1007</NoWarn>
  </PropertyGroup>
</Project>