「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。
-[[戻る>部会メモ]]
--[[部会メモ(2020年)>部会メモ#qba10194]]
--[[部会メモ(2021年)]]
--[[部会メモ(2022年)]]
--[[部会メモ(2023年)]]
--%%部会メモ(2024年)%%
--部会メモ(2025年)
--[[部会メモ(2026年)]]
*目次 [#x5557abd]
#contents
*概要 [#o4bb864a]
部会開催メモ
*詳細(2025年 [#i68b7d81]
**4-6月 セルフ&オフライン部会(第42-44回) [#e314d3d1]
***準備 [#s8852472]
Open棟梁をVS2022新環境でビルドして、移行・マイグレーションの評価を行い計画を策定
-久々、ビルド・バッチを実行、インストールされない4.5を除き、ほぼビルドはできた。
-フォルダはrootじゃなくても良い。developブランチ → migrationブランチで作業
-全ソリューションのビルドを確認後にポーティング作業を実施しつつ、必要に応じてOSSバージョンアップ移行を行う。
***計画 [#da07c38d]
-ターゲット・フレームワーク~
.NET Fx 4.5 - 4.7系、.NET Core 2 - 6系をドロップし、.NET 8に新規対応させる。
--.NET Fx 4.5はサポート終了済み、4.6は、2027/1/12まで。4.7は作業工数的な意味で。
--.NET Core 2 - 6は、サポート終了済み、.NET 8 は、2026/11/10まで。.NET 10は、2025/11頃にリリース予定。
--.NET Standard2.1は、.NET Core 3.0 以降が対象で非推奨の流れなので.NET Core(.NET 8)に移行。
--.NET Standard2.0は、残しておく意味が希薄になったのでドロップ(XPFがあれば別だが)。
--プリプロセッサ ディレクティブの変更("NETSTD" → "(NETSTD || NETCOREAPP)")
--.NET 6(LTS)は対応済み、.NET 7、9はSTSなので.NET 8(LTS) に新規対応。
-OSSバージョンアップ
--NuGet
---旧devenvのドロップにより packages.config を廃止し PackageReference に移行。
---NuGetパッケージを新パッケージに更新、ターゲットフレームワーク毎にサポート状況が異なる。
--データプロバイダ~
サポート状況がまちまちなので最新化(.NET Fx 4.8、.NET 8)せざるを得ない。
---SqlClientは、System.Data.SqlClient → Microsoft.Data.SqlClient(足切り早い)
---DamManagedOdp に完全移行(.NET Standardをドロップし.NET 8へ)するので DamOraOdp を完全削除
---Npgsqlはver9以降、.NET 6 以上のサポートに変更(Standard2.0 & 2.1での対応不可)。
--その他
---Sharpromptが.NET Fxのサポート終了、Simple_CLIをドロップ
---序にOSS系の更新(jQuery、Bootstrap、log4net → [[NLog>ログ出力方式 (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" in the "TargetFrameworks" property of your project file and then re-run NuGet restore.
---メッセージ準拠のNuGetリストアでは、ソリューションのNuGetパッケージの復元から行うが、解決しない事がある。
---その場合は、packages / obj / binフォルダを削除する(Fx系とCore系のクロスコンパイルで発生)。
-非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やMVCを構成する。
---載せ替えを、デバック実行を行いながら行って全体をマイグレーションして行く。
---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:ScriptReference Name="bootstrap" />、<asp:ScriptReference Name="respond" />を削除する。
--デザインが崩れている所を発見して修正を加えていく。
---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/commit/b8942bb8bfb3ca41d76829ef6c5175b01f465b81~
VB版:https://github.com/OpenTouryoProject/OpenTouryo/commit/a50542dd8f4bab9086a5a945d7df83901be05a3d
---MVC_Sample~
C#版:https://github.com/OpenTouryoProject/OpenTouryo/commit/0d48f82484361c7faa9ebce21332bce0163d9dab~
VB版:https://github.com/OpenTouryoProject/OpenTouryo/commit/4d1f2994abab440829041575ff3ad2cd5d77349d
-Web系(.NET Core)~
非Web系(.NET Core)と重複した分を除く
--テンプレート差し替え~
Gruntは引き続き利用可能そうだが、TaskRunnerExplorerがdisconになっている等、NuGetが楽そうなので、~
最新動向を取り込む意味でも新規作成したテンプレートに載せ替えた方が良さそうだと判断した結果。
---Program.Main スタイル プログラムに変換
---AddNewtonsoftJsonをひとまずコメントアウト。
---null 許容注釈コンテキスト(Nullable)を無効(disable)に設定
---本丸は、_Layout.cshtml(gruntfile.jsのbundle、uglifyの削除に対応)
---<environment include/exclude="Development">を削除(標準で入ってない)
--NuGet追加(初期状態ではなにも追加されていないので適宜、追加する)
--デザインが崩れている所を発見して修正を加えていく。
--ログ(ポイント抜粋)~
https://github.com/OpenTouryoProject/OpenTouryo/commit/2a08482f4c48398e7150fa859bb38a430d0a192e
-その他
--Public名前空間:暗号化系も、なかなか厳しい状況(SYSLIB0045)。
--全プロジェクト:System.Data.SqlClient → Microsoft.Data.SqlClient
***結果 [#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]
***.NET10マイグレ [#b7cbce86]
-SYSLIB 系の警告~
.NET 6 以降で発生。
--SYSLIB0021: 'XXXCryptoServiceProvider' や XXXManaged` は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/syslib-diagnostics/syslib0021
---.Create() ファクトリメソッドを使って対称・非対称アルゴリズムをインスタンス化(対称・非対称はRSA系のみ)
// 非推奨・旧形式
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/syslib-diagnostics/syslib0022
---Rijndael は AES の元となるアルゴリズムですが、現在は AES のみが推奨
// 非推奨・旧形式
var rijndael = new RijndaelManaged();
// 修正方法
var aes = Aes.Create(); // Rijndael の代替
--SYSLIB0023: 'RNGCryptoServiceProvider' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/syslib-diagnostics/syslib0023
---RNGCryptoServiceProvider の代わりに RandomNumberGenerator.Fill を使う(.NET Core系のみ)。
// 非推奨・旧形式
var rng = new RNGCryptoServiceProvider();
rng.GetBytes(data);
// 修正方法
RandomNumberGenerator.Fill(data); // static method
--SYSLIB0027: 'PublicKey.Key' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/syslib-diagnostics/syslib0027
---PublicKey.Key の代わりに、GetRSAPublicKey() や GetECDsaPublicKey() などを使って公開鍵を取得してチェックしてAPIを使い分ける。
// 非推奨・旧形式
var key = certificate.PublicKey.Key;
// 修正方法
var rsaPublicKey = certificate.GetRSAPublicKey(); // RSA の場合
var ecdsaPublicKey = certificate.GetECDsaPublicKey(); // ECDSA の場合
--SYSLIB0028: 'X509Certificate2.PrivateKey' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/syslib-diagnostics/syslib0028
---PrivateKeyの代わりに、適切な GetRSAPrivateKey() や GetECDsaPrivateKey() などを使って秘密鍵を取得してチェックしてAPIを使い分ける。
// 非推奨・旧形式
var privateKey = certificate.PrivateKey;
// 修正方法
var rsaPrivateKey = certificate.GetRSAPrivateKey(); // RSA の場合
var ecdsaPrivateKey = certificate.GetECDsaPrivateKey(); // ECDSA の場合
--SYSLIB0041: 'Rfc2898DeriveBytes(...)' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/syslib-diagnostics/syslib0041
---ハッシュ アルゴリズム名 (既定値は HashAlgorithmName.SHA1) を明示的に指定できるオーバーロードを使用。
// 非推奨・旧形式
var pdb = new Rfc2898DeriveBytes("password", salt);
// 修正方法
var pdb = new Rfc2898DeriveBytes(
System.Text.Encoding.UTF8.GetBytes("password"),
salt,
10000,
HashAlgorithmName.SHA256);
--ログ:https://github.com/OpenTouryoProject/OpenTouryo/commit/47f3f56f7f8fa0f6c2f5da533e2cb70788477296
-WFOのエラー~
.NET9以降の破壊的変更らしい。
--WFO1000: プロパティ "property" は、プロパティ コンテンツのコード シリアル化を構成しません。~
https://learn.microsoft.com/ja-jp/dotnet/desktop/winforms/compiler-messages/wfo1000
---プロパティがバイナリ シリアル化される設計のセキュリティ上のリスクを警告
---プロパティがデザイナーによってシリアル化される場合は、次のいずれかの方法でシリアル化を構成します。~
・プロパティに DefaultValueAttribute を追加し、既定値を指定します。既定値以外の場合、プロパティはシリアル化される。~
・プロパティに DesignerSerializationVisibilityAttribute を追加し、可視性を Visible(値型)または Content(複合型)に設定。
---プロパティがデザイナーによってシリアル化される場合は、~
・プロパティに DesignerSerializationVisibilityAttribute を追加し、可視性を Hiddenに設定。
***NuGet最新化 [#u982818c]
-変更点:
--サポートされる *.pdb のフォーマットはportableに限定される模様。
--nuspecファイルは1つだけ作成すれな良くなった(*.nupkgファイルと *.snupkgファイルが生成される)。
--NuGetサーバーでのサポートがなくなり、ソース・リンク(詳細不明)に置き換わっている模様。
--ちなみに、nuget packでのソース同梱もできなくなっている(contentsではjs/css的になってしまう)。
--シンボルサーバー含めた動作
---.NET Coreはローカル・ソース・ファイルを使用してステップ・インする(ソース・リンクが詳細不明)。
---.NET Frameworkは正しく *.pdb が取れているがステップ・インしない(別途ローカルで*.dll と *.pdbをベアにすれば動作する)。
-参考:[[NuGet導入、NuGet登録]]
--[[NuGetパッケージの作成手順]]
--[[NuGet導入後のデバッグ方法]]
***VS2026 Insider [#a73ece13]
-.NET10
--ビルドができることを確認
--WFO1000のコード修正の実施(Visible明示)
--新規のワーニング確認(ライブラリ側):
---warning MSB3277: "Microsoft.Extensions.DependencyInjection.Abstractions" の異なるバージョン間で、解決できない競合が見つかりました。
---warning SYSLIB0057: 'X509Certificate2.X509Certificate2(byte[])' は旧形式です
---warning SYSLIB0057: 'X509Certificate2.X509Certificate2(string)' は旧形式です
---warning SYSLIB0057: 'X509Certificate2.X509Certificate2(string, string?)' は旧形式です
---warning SYSLIB0057: 'X509Certificate2.X509Certificate2(string, string?, X509KeyStorageFlags)' は旧形式です
---warning SYSLIB0060: 'Rfc2898DeriveBytes.Rfc2898DeriveBytes(string, byte[], int, HashAlgorithmName)' は旧形式です
---warning NU1510: PackageReference System.Net.Http は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference System.Reflection.Emit.ILGeneration は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference System.Reflection.Emit.Lightweight は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference System.Security.Cryptography.Xml は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference System.Security.Cryptography.Cng は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference System.Security.Cryptography.OpenSsl は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference System.Security.Cryptography.X509Certificates は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1904: パッケージ 'System.Drawing.Common' 4.7.0 に既知の クリティカル 重大度の脆弱性があります、https://github.com/advisories/GHSA-rxg9-xrhp-64gj
--新規のワーニング確認(UIサブシステム側):
---warning NU1510: PackageReference Microsoft.Extensions.Configuration.Json は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference Microsoft.Extensions.Configuration.FileExtensions は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference Microsoft.Extensions.Primitives は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference Microsoft.Extensions.Configuration は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference System.Security.Cryptography.Xml は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference Microsoft.Extensions.Configuration.Abstractions は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning NU1510: PackageReference System.Formats.Asn1 は排除されません。このパッケージは不要である可能性があるため、依存関係から削除することを検討してください。
---warning ASPDEPR008: 'IWebHost' は旧形式です ('IWebHost is obsolete. Use IHost instead. For more information, visit https://aka.ms/aspnet/deprecate/008.')
---warning ASPDEPR008: 'WebHost' は旧形式です ('WebHost is obsolete. Use HostBuilder or WebApplicationBuilder instead. For more information, visit https://aka.ms/aspnet/deprecate/008.')
---warning ASPDEPR008: 'IWebHostBuilder.Build()' は旧形式です ('IWebHost is obsolete. Use IHost instead. For more information, visit https://aka.ms/aspnet/deprecate/008.')
-既存ビルドの確認
--MSBuildで問題発生 → パス変更
--新規のワーニング確認:既存は無し
***実施結果 [#j9074396]
3Qには.NET01が正式リリースされる予定なのでUIサブシステム側のビルドを通す。
-確認済みのワーニング落とし
-UIサブシステム側のビルド実行
-新規のビルドエラー、ワーニング落とし
**10-12月 セルフ&オフライン部会(第48-50回) [#j0ba9046]
***.NET10マイグレ [#n2656a9a]
9月にはリリース候補版(RC)が公開、11月11日に正式リリース予定
-SYSLIB 系の警告~
.NET 10 以降で発生。
--SYSLIB0057: 'X509Certificate2.X509Certificate2(XXXX)' は旧形式です
---https://learn.microsoft.com/ja-jp/dotnet/fundamentals/syslib-diagnostics/syslib0057
---今までは秘密鍵も公開鍵も同一APIだったが、以降はパスワードの有無でAPIを変える必要がある。
---(byte[])
// 非推奨・旧形式
return new X509Certificate2(
PrivacyEnhancedMail.GetBytesFromPemString(
pemString, PrivacyEnhancedMail.EnumToString(label)));
// 修正方法
return X509CertificateLoader.LoadCertificate(
PrivacyEnhancedMail.GetBytesFromPemString(
pemString, PrivacyEnhancedMail.EnumToString(label)));
---(string)
// 非推奨・旧形式
X509Certificate2 x509Key = new X509Certificate2(certificateFilePath);
// 修正方法
X509Certificate2 x509Key = X509CertificateLoader.LoadCertificateFromFile(certificateFilePath);
---(string, string?)
// 非推奨・旧形式
X509Certificate2 x509Key = new X509Certificate2(certificateFilePath, password);
// 修正方法
X509Certificate2 x509Key = X509CertificateLoader.LoadPkcs12FromFile(certificateFilePath, password);
---(string, string?, X509KeyStorageFlags)
// 非推奨・旧形式
X509Certificate2 x509Key = new X509Certificate2(certificateFilePath, password, flag);
// 修正方法
X509Certificate2 x509Key = X509CertificateLoader.LoadPkcs12FromFile(certificateFilePath, password, flag);
--SYSLIB0060: 'Rfc2898DeriveBytes.Rfc2898DeriveBytes(string, byte[], int, HashAlgorithmName)' は旧形式です
---https://learn.microsoft.com/en-us/dotnet/fundamentals/syslib-diagnostics/syslib0060
---new Rfc2898DeriveBytes.GetBytes(x) → Rfc2898DeriveBytes.Pbkdf2(..., x)
// 非推奨・旧形式
Rfc2898DeriveBytes kdf = new Rfc2898DeriveBytes(password, salt, iterations, hashAlgorithm);
byte[] derivedKey = kdf.GetBytes(64);
// 修正方法
byte[] derivedKey = Rfc2898DeriveBytes.Pbkdf2(password, salt, iterations, hashAlgorithm, 64);
-NUの警告
--NU1904:脆弱なパッケージ、disconの「DotNetZip」と、その依存関係の「System.Drawing.Common」の問題なので、DotNetZip自体をドロップ。
--NU1510:不要なパッケージ、単純にNuGet参照を削除(そもそも、不要な場合と、BCLに追加された場合の両方のケースがあるもよう)
---Microsoft.Extensions.Configuration系は、Web系と指摘はホントに不要なモノに限定されているので、Web系に追加され、新機能で上手く検出した模様。
---System.Formats.Asn1は、コレまで消すと動かなくなっていたが、消しても問題なくなったので、BCLに追加されたものと思われる。
---System.Security.Cryptography系は、引き続き、使用しているが、削除しても、ビルドが通るのでBCLに追加されたものと思われる。
---System.Reflection.Emit系も、引き続き、使用しているが、削除しても、ビルドが通るのでBCLに追加されたものと思われる。
---System.Net.Http は通信制御をドロップしたためと思われる。
-その他
--CA1416:必要に応じてプラットフォーム対応を実装
---以下の対応が可能だが、クロスコンパイルを考慮すると、いくつか考慮することがあった。
---関数なら、[SupportedOSPlatform("windows")]、[SupportedOSPlatform("linux")]を付与。
---コードブロックの場合、~
・if (os.Platform == PlatformID.Win32NT)、PlatformID.Unix)では、警告は消えなかった。~
・if (OperatingSystem.IsWindows())などが使えるが、elseにNotImplementedExceptionなどが必要になる。~
・その他、何らかの条件分岐が、ある程度サポートPFを暗示していれば一先ずOKと言う話もある。
参考:https://github.com/OpenTouryoProject/OpenTouryo/pull/500
***実施結果 [#s2339d94]
リリースが出来るか確認
-リリース前の確認
--ライブラリがバグ無く動くかをCIによって確認
--ユーザーインターフェイスがバグ無く動くかをCIによって確認
---Web、C/SでのCRUD実施
---カスタム・コントロール系
--VB版の動作確認や追いつき修正の実施
-[[リリース・エンジニアリング]]
***今後の予定 [#df047c6c]
OAuth2 / OIDCアーキテクチャ対応版:再起予定
-[[LocalServicesOnDocker>https://github.com/NetDevInfraWGinOSSConsortium/LocalServicesOnDocker]]チェック(Docker Compose V2)
-汎用認証サイト、フロントエンド、リソースサーバの移行&動作確認
--汎用認証サイト(.NET Framework版)
--汎用認証サイト
---ビルドシステム・エンハンス
---ドロップ~
・非対応データプロバイダ~
・FIDO2を一時的に
---アップデート対応~
・NuGetパッケージのアップデート対応
・棟梁ベース・ライブラリのアップデート対応~
・NuGetの*.ja(日本語)パッケージの削除(バージョンアップ阻害要因)~
・NuGetパッケージのアップデート対応
---「app.config、appsettings.json」対応~
・発掘(OneDriveから)~
・.gitignoreへの登録~
・Tortoiseのignore-on-commitでは恒久的にならない。~
・ファイルのヘッダに「_」を付与しリネーム。~
・実値を入れたファイルは「_」を削除する。
---リソース・ファイルの配置
C:\OpenTouryo\root\files\resource\MultiPurposeAuthSite
C:\...\root\files\resource\MultiPurposeAuthSite
--汎用認証サイト(.NET Framework版)
---アップデート対応~
NuGetの*.ja(日本語)パッケージの削除(バージョンアップ阻害要因)~
--汎用認証サイト(.NET Core版)
---ビルドシステム・エンハンス~
Grunt廃止、_Layout.cshtml(gruntfile.jsのbundle、uglifyの削除に対応)
--リソースサーバ
--フロントエンド
*参考 [#ybd24dca]
**[[部会メモ(開発基盤部会)>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?%E9%83%A8%E4%BC%9A%E3%83%A1%E3%83%A2]] [#c696aeac]
IP:153.227.38.36 TIME:"2026-01-21 (水) 13:12:03" REFERER:"https://opentouryo.osscons.jp/index.php?cmd=edit&page=%E9%83%A8%E4%BC%9A%E3%83%A1%E3%83%A2%EF%BC%882025%E5%B9%B4%EF%BC%89" USER_AGENT:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"