部会メモ(2025年)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「...
-[[戻る>部会メモ]]
--[[部会メモ(2020年)>部会メモ#qba10194]]
--[[部会メモ(2021年)]]
--[[部会メモ(2022年)]]
--[[部会メモ(2023年)]]
--%%部会メモ(2024年)%%
--部会メモ(2025年)
*目次 [#x5557abd]
#contents
*概要 [#o4bb864a]
部会開催メモ
*詳細(2025年 [#i68b7d81]
**4-6月 セルフ&オフライン部会(第42-44回) [#e314d3d1]
***準備 [#s8852472]
Open棟梁をVS2022新環境でビルドして、移行・マイグレーショ...
-久々、ビルド・バッチを実行、インストールされない4.5を除...
-フォルダはrootじゃなくても良い。developブランチ → migrat...
-全ソリューションのビルドを確認後にポーティング作業を実施...
***計画 [#da07c38d]
-ターゲット・フレームワーク~
.NET Fx 4.5 - 4.7系、.NET Core 2 - 6系をドロップし、.NET ...
--.NET Fx 4.5はサポート終了済み、4.6は、2027/1/12まで。4....
--.NET Core 2 - 6は、サポート終了済み、.NET 8 は、2026/11...
--.NET Standard2.1は、.NET Core 3.0 以降が対象で非推奨の...
--.NET Standard2.0は、残しておく意味が希薄になったのでド...
--プリプロセッサ ディレクティブの変更("NETSTD" → "(NETST...
--.NET 6(LTS)は対応済み、.NET 7、9はSTSなので.NET 8(LT...
-OSSバージョンアップ
--NuGet
---旧devenvのドロップにより packages.config を廃止し Pack...
---NuGetパッケージを新パッケージに更新、ターゲットフレー...
--データプロバイダ~
サポート状況がまちまちなので最新化(.NET Fx 4.8、.NET 8)...
---SqlClientは、System.Data.SqlClient → Microsoft.Data.Sq...
---DamManagedOdp に完全移行(.NET Standardをドロップし.NE...
---Npgsqlはver9以降、.NET 6 以上のサポートに変更(Standar...
--その他
---Sharpromptが.NET Fxのサポート終了、Simple_CLIをドロップ
---序にOSS系の更新(jQuery、Bootstrap、log4net → [[NLog>...
-Web系対応~
下記のために新規作成Webサイトのテンプレを使って再構築を予定
--.NET Fxの系は、PackageReferenceに対応しておらず、NuGet...
--.NET Core系は、Gruntなどのタスクランナーが下火になって...
--jQuery、Bootstrapのベターユースがよく解らないのでテンプ...
-Core系のBinarySerializeの完全廃止対応
--Core系の通信制御機能の全ドロップ(インプロセス呼び出し...
--DeployZipPackWithHTTPCore(設定のセーブ/ロードのみだが...
-工数マターでのドロップ
--NuGet、テンプレート・リポジトリ~
.NET、VSバージョン数が減り、NuGetのデメリット顕在化で必要...
--通信制御のHTTPサポート~
WebAPI一択に(TCPサポートのWCFは残す)
---ASP.NET Webサービスのサポート
---通信制御のWCFのHTTPバインディングのサポート
--利用頻度の低いツール
---DistributeFile_Tool
***実施 [#vb3e0bef]
-作業中の色々メモ
--リマインド
---Business以下は一度NuGet解除して、リリース前に再NuGet化...
---セッション状態サーバー起動は以前のバージョンからbatを...
--Core系RichClientのTarget:netx.x-windowsx.x(8.0, 7.0)
---TargetFramework
---Project出力(HintPath, DocumentationFile)
--Err.MSG:Add a reference to ".NETFramework,Version=v4.8...
---メッセージ準拠のNuGetリストアでは、ソリューションのNuG...
---その場合は、packages / obj / binフォルダを削除する(Fx...
-非Web系
--.NET Fx
---(アレば)NuGet更新
---競合発生時はAssemblyBindingRedirectを設定
--.NET Core
---TargetFramework変更、参照設定の変更、NuGet更新
---競合発生時はAssemblyBindingRedirectではなくNuGetで上書き
---WindowsBase競合は、UseWindowsForms、UseWPFの両方をチェ...
(ライブラリが両方参照しているので、片方だけだと警告が出...
-Web系(.NET Fx)~
非Web系(.NET Fx)と重複した分を除く
--テンプレート差し替え~
.NET Fx 4.8のWebアプリケーションが、NuGet更新だけでは対応...
---.NET Fx 4.8のWebアプリケーションを新規作成、WebFormsや...
---載せ替えを、デバック実行を行いながら行って全体をマイグ...
---Global.asax、BundleConfig.csに変更点が(相対的に)多い...
---最後に足りない参照設定(DLL、NuGet)を足していく。
--NuGet更新
---bootstrap:5.2.3 → 5.3.6
---DotNetCompilerPlatform:2.0.1 → 4.1.0
--Microsoft.CodeDom.Providers.DotNetCompilerPlatformを削除
---NuGet更新前に「bin\roslyn\csc.exe が見つかりませんでし...
---NuGet更新後に「認識されない要素 'system.codedom' です...
---DotNetCompilerPlatformを削除することでエラー発生しなく...
---(昔の環境を取り置く場合以外、不要である場合がほとんど...
--Err.MSG:'jquery' は無効なスクリプト名です。名前は '.js...
---NuGetで「AspNet.ScriptManager.jQuery」をインストールす...
---'jquery' → 'bootstrap'、'respond'については、<asp:Scri...
--デザインが崩れている所を発見して修正を加えていく。
---menu-contentn の classを削除
---.nav-side-menu を position: relative; にしないと、位置...
---body, html, .menu-list を height: 100%; にしないと縮ん...
--MVCのAjax.BeginFormが適切に動作しない件
---Microsoft.jQuery.Unobtrusive.Ajaxのインストールが必要。
---MVCのBundleConfig.csで、jquery.unobtrusive-ajaxを追加...
--ログ(ポイント抜粋)
---WebForms_Sample~
C#版:https://github.com/OpenTouryoProject/OpenTouryo/com...
VB版:https://github.com/OpenTouryoProject/OpenTouryo/com...
---MVC_Sample~
C#版:https://github.com/OpenTouryoProject/OpenTouryo/com...
VB版:https://github.com/OpenTouryoProject/OpenTouryo/com...
-Web系(.NET Core)~
非Web系(.NET Core)と重複した分を除く
--テンプレート差し替え~
Gruntは引き続き利用可能そうだが、TaskRunnerExplorerがdisc...
最新動向を取り込む意味でも新規作成したテンプレートに載せ...
---Program.Main スタイル プログラムに変換
---AddNewtonsoftJsonをひとまずコメントアウト。
---null 許容注釈コンテキスト(Nullable)を無効(disable)...
---本丸は、_Layout.cshtml(gruntfile.jsのbundle、uglifyの...
---<environment include/exclude="Development">を削除(標...
--NuGet追加(初期状態ではなにも追加されていないので適宜、...
--デザインが崩れている所を発見して修正を加えていく。
--ログ(ポイント抜粋)~
https://github.com/OpenTouryoProject/OpenTouryo/commit/2a...
-その他
--Public名前空間:暗号化系も、なかなか厳しい状況(SYSLIB00...
--全プロジェクト:System.Data.SqlClient → Microsoft.Data....
***結果 [#h93626fa]
-大きな変更点
--.NET 8で、BinarySerializeが完全廃止になった。
---従って、.NET Coreの通信制御はインプロセスのみ。
---関連して、幾つかのプロジェクトのドロップを行った。
--いくらか、.NET Fx側のサポート終了OSSが観測された。
---Npgsql
---Sharprompt
-細かい変更点
--サクラエディタのUTF-8グレップ:-GCODE=4を付与
--Security.Cryptography.EccKey → Jose.keys.EccKey(名前空...
--ビルドシステム・エンハンス(nuget.exe最新化、Tempファイ...
--その他、前バージョンのビルドシステムの潜在不良の様なモ...
**7-9月 セルフ&オフライン部会(第45-47回) [#sadb62cc]
***準備 [#b7cbce86]
-SYSLIB 系の警告~
.NET Core / .NET 5+系で、ほぼ必須。.NET Framework 4.x系で...
--SYSLIB0021: 'XXXCryptoServiceProvider' や XXXManaged` ...
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---.Create() ファクトリメソッドを使ってアルゴリズムをイン...
// 非推奨・旧形式
var aes = new AesManaged();
var rsa = new RSACryptoServiceProvider();
// 修正方法
var aes = Aes.Create();
var rsa = RSA.Create();
--SYSLIB0022: 'RijndaelManaged' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---Rijndael は AES の元となるアルゴリズムですが、現在は A...
// 非推奨・旧形式
var rijndael = new RijndaelManaged();
// 修正方法
var aes = Aes.Create(); // Rijndael の代替
--SYSLIB0023: 'RNGCryptoServiceProvider' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---RNGCryptoServiceProvider の代わりに RandomNumberGenera...
// 非推奨・旧形式
var rng = new RNGCryptoServiceProvider();
rng.GetBytes(data);
// 修正方法
RandomNumberGenerator.Fill(data); // static method
--SYSLIB0027: 'PublicKey.Key' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---PublicKey.Key の代わりに、GetRSAPublicKey() などを使っ...
// 非推奨・旧形式
var key = certificate.PublicKey.Key;
// 修正方法
var rsaPublicKey = certificate.GetRSAPublicKey(); // RSA...
var ecdsaPublicKey = certificate.GetECDsaPublicKey(); //...
--SYSLIB0028: 'X509Certificate2.PrivateKey' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---PrivateKeyの代わりに、適切な GetRSAPrivateKey() や Get...
// 非推奨・旧形式
var privateKey = certificate.PrivateKey;
// 修正方法
var rsaPrivateKey = certificate.GetRSAPrivateKey(); // R...
var ecdsaPrivateKey = certificate.GetECDsaPrivateKey(); ...
--SYSLIB0041: 'Rfc2898DeriveBytes(...)' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---パスワードを文字列で渡すオーバーロードは非推奨。バイト...
// 非推奨・旧形式
var pdb = new Rfc2898DeriveBytes("password", salt);
// 修正方法
var pdb = new Rfc2898DeriveBytes(
System.Text.Encoding.UTF8.GetBytes("password"),
salt,
10000,
HashAlgorithmName.SHA256);
-.NET10移行
--現時点では、まだ、VS2022でのビルドをサポートしていない。
-- WFO1000:https://learn.microsoft.com/ja-jp/dotnet/deskt...
***計画 [#u982818c]
***実施 [#q344b58f]
***結果 [#j9074396]
*参考 [#ybd24dca]
**[[部会メモ(開発基盤部会)>https://dotnetdevelopmentinf...
終了行:
「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「...
-[[戻る>部会メモ]]
--[[部会メモ(2020年)>部会メモ#qba10194]]
--[[部会メモ(2021年)]]
--[[部会メモ(2022年)]]
--[[部会メモ(2023年)]]
--%%部会メモ(2024年)%%
--部会メモ(2025年)
*目次 [#x5557abd]
#contents
*概要 [#o4bb864a]
部会開催メモ
*詳細(2025年 [#i68b7d81]
**4-6月 セルフ&オフライン部会(第42-44回) [#e314d3d1]
***準備 [#s8852472]
Open棟梁をVS2022新環境でビルドして、移行・マイグレーショ...
-久々、ビルド・バッチを実行、インストールされない4.5を除...
-フォルダはrootじゃなくても良い。developブランチ → migrat...
-全ソリューションのビルドを確認後にポーティング作業を実施...
***計画 [#da07c38d]
-ターゲット・フレームワーク~
.NET Fx 4.5 - 4.7系、.NET Core 2 - 6系をドロップし、.NET ...
--.NET Fx 4.5はサポート終了済み、4.6は、2027/1/12まで。4....
--.NET Core 2 - 6は、サポート終了済み、.NET 8 は、2026/11...
--.NET Standard2.1は、.NET Core 3.0 以降が対象で非推奨の...
--.NET Standard2.0は、残しておく意味が希薄になったのでド...
--プリプロセッサ ディレクティブの変更("NETSTD" → "(NETST...
--.NET 6(LTS)は対応済み、.NET 7、9はSTSなので.NET 8(LT...
-OSSバージョンアップ
--NuGet
---旧devenvのドロップにより packages.config を廃止し Pack...
---NuGetパッケージを新パッケージに更新、ターゲットフレー...
--データプロバイダ~
サポート状況がまちまちなので最新化(.NET Fx 4.8、.NET 8)...
---SqlClientは、System.Data.SqlClient → Microsoft.Data.Sq...
---DamManagedOdp に完全移行(.NET Standardをドロップし.NE...
---Npgsqlはver9以降、.NET 6 以上のサポートに変更(Standar...
--その他
---Sharpromptが.NET Fxのサポート終了、Simple_CLIをドロップ
---序にOSS系の更新(jQuery、Bootstrap、log4net → [[NLog>...
-Web系対応~
下記のために新規作成Webサイトのテンプレを使って再構築を予定
--.NET Fxの系は、PackageReferenceに対応しておらず、NuGet...
--.NET Core系は、Gruntなどのタスクランナーが下火になって...
--jQuery、Bootstrapのベターユースがよく解らないのでテンプ...
-Core系のBinarySerializeの完全廃止対応
--Core系の通信制御機能の全ドロップ(インプロセス呼び出し...
--DeployZipPackWithHTTPCore(設定のセーブ/ロードのみだが...
-工数マターでのドロップ
--NuGet、テンプレート・リポジトリ~
.NET、VSバージョン数が減り、NuGetのデメリット顕在化で必要...
--通信制御のHTTPサポート~
WebAPI一択に(TCPサポートのWCFは残す)
---ASP.NET Webサービスのサポート
---通信制御のWCFのHTTPバインディングのサポート
--利用頻度の低いツール
---DistributeFile_Tool
***実施 [#vb3e0bef]
-作業中の色々メモ
--リマインド
---Business以下は一度NuGet解除して、リリース前に再NuGet化...
---セッション状態サーバー起動は以前のバージョンからbatを...
--Core系RichClientのTarget:netx.x-windowsx.x(8.0, 7.0)
---TargetFramework
---Project出力(HintPath, DocumentationFile)
--Err.MSG:Add a reference to ".NETFramework,Version=v4.8...
---メッセージ準拠のNuGetリストアでは、ソリューションのNuG...
---その場合は、packages / obj / binフォルダを削除する(Fx...
-非Web系
--.NET Fx
---(アレば)NuGet更新
---競合発生時はAssemblyBindingRedirectを設定
--.NET Core
---TargetFramework変更、参照設定の変更、NuGet更新
---競合発生時はAssemblyBindingRedirectではなくNuGetで上書き
---WindowsBase競合は、UseWindowsForms、UseWPFの両方をチェ...
(ライブラリが両方参照しているので、片方だけだと警告が出...
-Web系(.NET Fx)~
非Web系(.NET Fx)と重複した分を除く
--テンプレート差し替え~
.NET Fx 4.8のWebアプリケーションが、NuGet更新だけでは対応...
---.NET Fx 4.8のWebアプリケーションを新規作成、WebFormsや...
---載せ替えを、デバック実行を行いながら行って全体をマイグ...
---Global.asax、BundleConfig.csに変更点が(相対的に)多い...
---最後に足りない参照設定(DLL、NuGet)を足していく。
--NuGet更新
---bootstrap:5.2.3 → 5.3.6
---DotNetCompilerPlatform:2.0.1 → 4.1.0
--Microsoft.CodeDom.Providers.DotNetCompilerPlatformを削除
---NuGet更新前に「bin\roslyn\csc.exe が見つかりませんでし...
---NuGet更新後に「認識されない要素 'system.codedom' です...
---DotNetCompilerPlatformを削除することでエラー発生しなく...
---(昔の環境を取り置く場合以外、不要である場合がほとんど...
--Err.MSG:'jquery' は無効なスクリプト名です。名前は '.js...
---NuGetで「AspNet.ScriptManager.jQuery」をインストールす...
---'jquery' → 'bootstrap'、'respond'については、<asp:Scri...
--デザインが崩れている所を発見して修正を加えていく。
---menu-contentn の classを削除
---.nav-side-menu を position: relative; にしないと、位置...
---body, html, .menu-list を height: 100%; にしないと縮ん...
--MVCのAjax.BeginFormが適切に動作しない件
---Microsoft.jQuery.Unobtrusive.Ajaxのインストールが必要。
---MVCのBundleConfig.csで、jquery.unobtrusive-ajaxを追加...
--ログ(ポイント抜粋)
---WebForms_Sample~
C#版:https://github.com/OpenTouryoProject/OpenTouryo/com...
VB版:https://github.com/OpenTouryoProject/OpenTouryo/com...
---MVC_Sample~
C#版:https://github.com/OpenTouryoProject/OpenTouryo/com...
VB版:https://github.com/OpenTouryoProject/OpenTouryo/com...
-Web系(.NET Core)~
非Web系(.NET Core)と重複した分を除く
--テンプレート差し替え~
Gruntは引き続き利用可能そうだが、TaskRunnerExplorerがdisc...
最新動向を取り込む意味でも新規作成したテンプレートに載せ...
---Program.Main スタイル プログラムに変換
---AddNewtonsoftJsonをひとまずコメントアウト。
---null 許容注釈コンテキスト(Nullable)を無効(disable)...
---本丸は、_Layout.cshtml(gruntfile.jsのbundle、uglifyの...
---<environment include/exclude="Development">を削除(標...
--NuGet追加(初期状態ではなにも追加されていないので適宜、...
--デザインが崩れている所を発見して修正を加えていく。
--ログ(ポイント抜粋)~
https://github.com/OpenTouryoProject/OpenTouryo/commit/2a...
-その他
--Public名前空間:暗号化系も、なかなか厳しい状況(SYSLIB00...
--全プロジェクト:System.Data.SqlClient → Microsoft.Data....
***結果 [#h93626fa]
-大きな変更点
--.NET 8で、BinarySerializeが完全廃止になった。
---従って、.NET Coreの通信制御はインプロセスのみ。
---関連して、幾つかのプロジェクトのドロップを行った。
--いくらか、.NET Fx側のサポート終了OSSが観測された。
---Npgsql
---Sharprompt
-細かい変更点
--サクラエディタのUTF-8グレップ:-GCODE=4を付与
--Security.Cryptography.EccKey → Jose.keys.EccKey(名前空...
--ビルドシステム・エンハンス(nuget.exe最新化、Tempファイ...
--その他、前バージョンのビルドシステムの潜在不良の様なモ...
**7-9月 セルフ&オフライン部会(第45-47回) [#sadb62cc]
***準備 [#b7cbce86]
-SYSLIB 系の警告~
.NET Core / .NET 5+系で、ほぼ必須。.NET Framework 4.x系で...
--SYSLIB0021: 'XXXCryptoServiceProvider' や XXXManaged` ...
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---.Create() ファクトリメソッドを使ってアルゴリズムをイン...
// 非推奨・旧形式
var aes = new AesManaged();
var rsa = new RSACryptoServiceProvider();
// 修正方法
var aes = Aes.Create();
var rsa = RSA.Create();
--SYSLIB0022: 'RijndaelManaged' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---Rijndael は AES の元となるアルゴリズムですが、現在は A...
// 非推奨・旧形式
var rijndael = new RijndaelManaged();
// 修正方法
var aes = Aes.Create(); // Rijndael の代替
--SYSLIB0023: 'RNGCryptoServiceProvider' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---RNGCryptoServiceProvider の代わりに RandomNumberGenera...
// 非推奨・旧形式
var rng = new RNGCryptoServiceProvider();
rng.GetBytes(data);
// 修正方法
RandomNumberGenerator.Fill(data); // static method
--SYSLIB0027: 'PublicKey.Key' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---PublicKey.Key の代わりに、GetRSAPublicKey() などを使っ...
// 非推奨・旧形式
var key = certificate.PublicKey.Key;
// 修正方法
var rsaPublicKey = certificate.GetRSAPublicKey(); // RSA...
var ecdsaPublicKey = certificate.GetECDsaPublicKey(); //...
--SYSLIB0028: 'X509Certificate2.PrivateKey' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---PrivateKeyの代わりに、適切な GetRSAPrivateKey() や Get...
// 非推奨・旧形式
var privateKey = certificate.PrivateKey;
// 修正方法
var rsaPrivateKey = certificate.GetRSAPrivateKey(); // R...
var ecdsaPrivateKey = certificate.GetECDsaPrivateKey(); ...
--SYSLIB0041: 'Rfc2898DeriveBytes(...)' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/...
---パスワードを文字列で渡すオーバーロードは非推奨。バイト...
// 非推奨・旧形式
var pdb = new Rfc2898DeriveBytes("password", salt);
// 修正方法
var pdb = new Rfc2898DeriveBytes(
System.Text.Encoding.UTF8.GetBytes("password"),
salt,
10000,
HashAlgorithmName.SHA256);
-.NET10移行
--現時点では、まだ、VS2022でのビルドをサポートしていない。
-- WFO1000:https://learn.microsoft.com/ja-jp/dotnet/deskt...
***計画 [#u982818c]
***実施 [#q344b58f]
***結果 [#j9074396]
*参考 [#ybd24dca]
**[[部会メモ(開発基盤部会)>https://dotnetdevelopmentinf...
ページ名: