--- lang: ja-jp breaks: true --- # WinForm `net9.0` でビルドすると、`error WFO1000: プロパティ 'xxxxxxxx' は、プロパティ コンテンツのコード シリアル化を構成しません` とエラーになる。 2024-11-17 ## [Breaking change]: New security analyzers in WinForms prevent leaking of user data #42724 * https://github.com/dotnet/docs/issues/42724 ## New security analyzers * https://learn.microsoft.com/en-us/dotnet/core/compatibility/windows-forms/9.0/security-analyzers * ## 以下の何れかの属性を設定すると抑止できる。 * DesignerSerializationVisibilityAttribute * DefaultValueAttribute * ShouldSerialize[propertyName] methods * ```csharp= [DefaultValue(null)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] public UnmanagedMemoryStream SoundAsterisk { get { return this._srmSoundAsterisk; } set { this._srmSoundAsterisk = value; } } private bool ShouldSerializeSoundAsterisk() { return true; } ``` ```csharp= [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] ``` ## 何も変更せずに抑止したい場合は、`.editorconfig` に設定を追加する。 * 以下を追加する。 ```editorconfig= # error WFO1000: プロパティ 'XXXXXXXX' は、プロパティ コンテンツのコード シリアル化を構成しません dotnet_diagnostic.WFO1000.severity = silent ``` ###### tags: `WinForm` `net9.0` `C#` `error WFO1000`
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.