• R/O
  • HTTP
  • SSH
  • HTTPS

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

ファイル整理用ツールのPrism+WPFサンプル実装


コミットメタ情報

リビジョン1bed29561da2c12fe6e5c172c82d2d7dbe3c4c6c (tree)
日時2023-09-30 22:39:49
作者yoshy <yoshy.org.bitbucket@gz.j...>
コミッターyoshy

ログメッセージ

[MOD] Appプロジェクトの接尾辞 .00App を削除
[MOD] OuterEdge 配下の Behavior を Infra に移動
[MOD] アセンブリ名・ルート名前空間をプロジェクト名を置換して生成するように修正

変更サマリ

差分

--- a/FolderCategorizer2.01Domain/FolderCategorizer2.01Domain.csproj
+++ b/FolderCategorizer2.01Domain/FolderCategorizer2.01Domain.csproj
@@ -2,8 +2,9 @@
22 <PropertyGroup>
33 <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
44 <UseWPF>true</UseWPF>
5- <AssemblyName>FolderCategorizer2.Domain</AssemblyName>
6- <RootNamespace>FolderCategorizer2.Domain</RootNamespace>
5+ <NameRegex><![CDATA[\.[0-9]+]]></NameRegex>
6+ <AssemblyName>$([System.Text.RegularExpressions.Regex]::Replace($(MSBuildProjectName),$(NameRegex),"."))</AssemblyName>
7+ <RootNamespace>$(AssemblyName)</RootNamespace>
78 </PropertyGroup>
89 <ItemGroup>
910 <ProjectReference Include="..\FolderCategorizer2.05Infra\FolderCategorizer2.05Infra.csproj" />
--- a/FolderCategorizer2.02UseCase/FolderCategorizer2.02UseCase.csproj
+++ b/FolderCategorizer2.02UseCase/FolderCategorizer2.02UseCase.csproj
@@ -4,9 +4,9 @@
44 <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
55 <Nullable>enable</Nullable>
66 <UseWPF>true</UseWPF>
7- <SupportedOSPlatformVersion>10.0.19041.0</SupportedOSPlatformVersion>
8- <RootNamespace>FolderCategorizer2.UseCase</RootNamespace>
9- <AssemblyName>FolderCategorizer2.UseCase</AssemblyName>
7+ <NameRegex><![CDATA[\.[0-9]+]]></NameRegex>
8+ <AssemblyName>$([System.Text.RegularExpressions.Regex]::Replace($(MSBuildProjectName),$(NameRegex),"."))</AssemblyName>
9+ <RootNamespace>$(AssemblyName)</RootNamespace>
1010 </PropertyGroup>
1111
1212 <ItemGroup>
--- a/FolderCategorizer2.03Adaptor/FolderCategorizer2.03Adaptor.csproj
+++ b/FolderCategorizer2.03Adaptor/FolderCategorizer2.03Adaptor.csproj
@@ -2,8 +2,9 @@
22 <PropertyGroup>
33 <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
44 <UseWPF>true</UseWPF>
5- <AssemblyName>FolderCategorizer2.Adaptor</AssemblyName>
6- <RootNamespace>FolderCategorizer2.Adaptor</RootNamespace>
5+ <NameRegex><![CDATA[\.[0-9]+]]></NameRegex>
6+ <AssemblyName>$([System.Text.RegularExpressions.Regex]::Replace($(MSBuildProjectName),$(NameRegex),"."))</AssemblyName>
7+ <RootNamespace>$(AssemblyName)</RootNamespace>
78 </PropertyGroup>
89 <ItemGroup>
910 <ProjectReference Include="..\FolderCategorizer2.02UseCase\FolderCategorizer2.02UseCase.csproj" />
--- a/FolderCategorizer2.04OuterEdge/FolderCategorizer2.04OuterEdge.csproj
+++ b/FolderCategorizer2.04OuterEdge/FolderCategorizer2.04OuterEdge.csproj
@@ -2,8 +2,9 @@
22 <PropertyGroup>
33 <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
44 <UseWPF>true</UseWPF>
5- <AssemblyName>FolderCategorizer2.OuterEdge</AssemblyName>
6- <RootNamespace>FolderCategorizer2.OuterEdge</RootNamespace>
5+ <NameRegex><![CDATA[\.[0-9]+]]></NameRegex>
6+ <AssemblyName>$([System.Text.RegularExpressions.Regex]::Replace($(MSBuildProjectName),$(NameRegex),"."))</AssemblyName>
7+ <RootNamespace>$(AssemblyName)</RootNamespace>
78 </PropertyGroup>
89 <ItemGroup>
910 <ProjectReference Include="..\FolderCategorizer2.03Adaptor\FolderCategorizer2.03Adaptor.csproj" />
--- a/FolderCategorizer2.04OuterEdge/UI/View/CategorizePromptView.xaml
+++ b/FolderCategorizer2.04OuterEdge/UI/View/CategorizePromptView.xaml
@@ -5,7 +5,7 @@
55 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
66 xmlns:prism="http://prismlibrary.com/"
77 xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
8- xmlns:bh="clr-namespace:FolderCategorizer2.OuterEdge.UI.Behavior"
8+ xmlns:bh="http://schemas.drillion.net/folderCategorizer2/behavior"
99 xmlns:vm="http://schemas.drillion.net/folderCategorizer2/viewmodel"
1010 mc:Ignorable="d"
1111 d:DataContext="{d:DesignInstance Type=vm:ICategorizePromptViewModel}"
--- a/FolderCategorizer2.04OuterEdge/UI/View/UserPromptView.xaml
+++ b/FolderCategorizer2.04OuterEdge/UI/View/UserPromptView.xaml
@@ -5,7 +5,7 @@
55 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
66 xmlns:prism="http://prismlibrary.com/"
77 xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
8- xmlns:bh="clr-namespace:FolderCategorizer2.OuterEdge.UI.Behavior"
8+ xmlns:bh="http://schemas.drillion.net/folderCategorizer2/behavior"
99 xmlns:vm="http://schemas.drillion.net/folderCategorizer2/viewmodel"
1010 mc:Ignorable="d"
1111 d:DataContext="{d:DesignInstance Type=vm:IUserPromptViewModel}"
--- a/FolderCategorizer2.05Infra/AssemblyInfo.cs
+++ b/FolderCategorizer2.05Infra/AssemblyInfo.cs
@@ -14,4 +14,5 @@ using System.Windows.Markup;
1414
1515 [assembly: Guid("f63f7e9f-b879-470f-a987-91f744f74de7")]
1616
17+[assembly: XmlnsDefinition("http://schemas.drillion.net/folderCategorizer2/behavior", "FolderCategorizer2.Infra.Xaml.Behavior")]
1718 [assembly: XmlnsDefinition("http://schemas.drillion.net/folderCategorizer2/xaml/markup", "FolderCategorizer2.Infra.Xaml.Markup")]
--- a/FolderCategorizer2.05Infra/FolderCategorizer2.05Infra.csproj
+++ b/FolderCategorizer2.05Infra/FolderCategorizer2.05Infra.csproj
@@ -2,8 +2,9 @@
22 <PropertyGroup>
33 <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
44 <UseWPF>true</UseWPF>
5- <AssemblyName>FolderCategorizer2.Infra</AssemblyName>
6- <RootNamespace>FolderCategorizer2.Infra</RootNamespace>
5+ <NameRegex><![CDATA[\.[0-9]+]]></NameRegex>
6+ <AssemblyName>$([System.Text.RegularExpressions.Regex]::Replace($(MSBuildProjectName),$(NameRegex),"."))</AssemblyName>
7+ <RootNamespace>$(AssemblyName)</RootNamespace>
78 </PropertyGroup>
89 <ItemGroup>
910 <None Remove="Resources\Image\FolderError_256x.png" />
--- a/FolderCategorizer2.04OuterEdge/UI/Behavior/GotFocusSelectAllBehavior.cs
+++ b/FolderCategorizer2.05Infra/Xaml/Behavior/GotFocusSelectAllBehavior.cs
@@ -3,9 +3,9 @@ using NLog;
33 using System.Windows;
44 using System.Windows.Controls;
55
6-namespace FolderCategorizer2.OuterEdge.UI.Behavior
6+namespace FolderCategorizer2.Infra.Xaml.Behavior
77 {
8- internal class GotFocusSelectAllBehavior : Behavior<TextBox>
8+ public class GotFocusSelectAllBehavior : Behavior<TextBox>
99 {
1010 private static readonly ILogger logger = LogManager.GetCurrentClassLogger();
1111
--- a/FolderCategorizer2.04OuterEdge/UI/Behavior/OnLoadedSelectAllBehavior.cs
+++ b/FolderCategorizer2.05Infra/Xaml/Behavior/OnLoadedSelectAllBehavior.cs
@@ -3,9 +3,9 @@ using NLog;
33 using System.Windows;
44 using System.Windows.Controls;
55
6-namespace FolderCategorizer2.OuterEdge.UI.Behavior
6+namespace FolderCategorizer2.Infra.Xaml.Behavior
77 {
8- internal class OnLoadedSelectAllBehavior : Behavior<TextBox>
8+ public class OnLoadedSelectAllBehavior : Behavior<TextBox>
99 {
1010 private static readonly ILogger logger = LogManager.GetCurrentClassLogger();
1111
--- a/FolderCategorizer2.04OuterEdge/UI/Behavior/OnLoadedSetFocusBehavior.cs
+++ b/FolderCategorizer2.05Infra/Xaml/Behavior/OnLoadedSetFocusBehavior.cs
@@ -3,9 +3,9 @@ using NLog;
33 using System.Windows;
44 using System.Windows.Controls;
55
6-namespace FolderCategorizer2.OuterEdge.UI.Behavior
6+namespace FolderCategorizer2.Infra.Xaml.Behavior
77 {
8- internal class OnLoadedSetFocusBehavior : Behavior<TextBox>
8+ public class OnLoadedSetFocusBehavior : Behavior<TextBox>
99 {
1010 private static readonly ILogger logger = LogManager.GetCurrentClassLogger();
1111
--- a/FolderCategorizer2.sln
+++ b/FolderCategorizer2.sln
@@ -3,8 +3,6 @@ Microsoft Visual Studio Solution File, Format Version 12.00
33 # Visual Studio Version 17
44 VisualStudioVersion = 17.0.32112.339
55 MinimumVisualStudioVersion = 10.0.40219.1
6-Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FolderCategorizer2.00App", "FolderCategorizer2.00App\FolderCategorizer2.00App.csproj", "{F4F34524-B841-4393-83DE-7516B58AD2B2}"
7-EndProject
86 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FolderCategorizer2.01Domain", "FolderCategorizer2.01Domain\FolderCategorizer2.01Domain.csproj", "{94876FAE-BA0C-4961-8C98-5C6D40795526}"
97 EndProject
108 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FolderCategorizer2.02UseCase", "FolderCategorizer2.02UseCase\FolderCategorizer2.02UseCase.csproj", "{EDC87115-3518-49D5-9F3D-193A031CE5AE}"
@@ -29,16 +27,14 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CleanAuLait.ObservableColle
2927 EndProject
3028 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CleanAuLait.Prism.WPF", "..\CleanAuLait.Prism.WPF\CleanAuLait.Prism.WPF.csproj", "{9F83D4FE-6925-44C3-A0C4-715A7A87F13B}"
3129 EndProject
30+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FolderCategorizer2", "FolderCategorizer2\FolderCategorizer2.csproj", "{06ED7A57-E285-4E59-B4EB-3354300A9DE5}"
31+EndProject
3232 Global
3333 GlobalSection(SolutionConfigurationPlatforms) = preSolution
3434 Debug|Any CPU = Debug|Any CPU
3535 Release|Any CPU = Release|Any CPU
3636 EndGlobalSection
3737 GlobalSection(ProjectConfigurationPlatforms) = postSolution
38- {F4F34524-B841-4393-83DE-7516B58AD2B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
39- {F4F34524-B841-4393-83DE-7516B58AD2B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
40- {F4F34524-B841-4393-83DE-7516B58AD2B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
41- {F4F34524-B841-4393-83DE-7516B58AD2B2}.Release|Any CPU.Build.0 = Release|Any CPU
4238 {94876FAE-BA0C-4961-8C98-5C6D40795526}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
4339 {94876FAE-BA0C-4961-8C98-5C6D40795526}.Debug|Any CPU.Build.0 = Debug|Any CPU
4440 {94876FAE-BA0C-4961-8C98-5C6D40795526}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -75,6 +71,10 @@ Global
7571 {9F83D4FE-6925-44C3-A0C4-715A7A87F13B}.Debug|Any CPU.Build.0 = Debug|Any CPU
7672 {9F83D4FE-6925-44C3-A0C4-715A7A87F13B}.Release|Any CPU.ActiveCfg = Release|Any CPU
7773 {9F83D4FE-6925-44C3-A0C4-715A7A87F13B}.Release|Any CPU.Build.0 = Release|Any CPU
74+ {06ED7A57-E285-4E59-B4EB-3354300A9DE5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
75+ {06ED7A57-E285-4E59-B4EB-3354300A9DE5}.Debug|Any CPU.Build.0 = Debug|Any CPU
76+ {06ED7A57-E285-4E59-B4EB-3354300A9DE5}.Release|Any CPU.ActiveCfg = Release|Any CPU
77+ {06ED7A57-E285-4E59-B4EB-3354300A9DE5}.Release|Any CPU.Build.0 = Release|Any CPU
7878 EndGlobalSection
7979 GlobalSection(SolutionProperties) = preSolution
8080 HideSolutionNode = FALSE
--- a/FolderCategorizer2.00App/App.xaml.cs
+++ b/FolderCategorizer2/App.xaml.cs
@@ -208,11 +208,17 @@ namespace FolderCategorizer2
208208
209209 // Show Application Version
210210
211- AssemblyName asm = Assembly.GetExecutingAssembly().GetName();
212- Version ver = asm.Version;
211+ Assembly asm = Assembly.GetExecutingAssembly();
212+ AssemblyName asmInfo = asm.GetName();
213213
214- logger.Info("{0} v{1}.{2}.{3}.{4} initialized.",
215- asm.Name, ver.Major, ver.Minor, ver.Build, ver.Revision);
214+ Version ver = asmInfo.Version;
215+ string asmVer = $"{ver.Major}.{ver.Minor}.{ver.Build}.{ver.Revision}";
216+ string infoVer = asm.GetCustomAttribute<AssemblyInformationalVersionAttribute>()?.InformationalVersion;
217+ infoVer = asmVer.StartsWith(infoVer) ? infoVer + "-release" : infoVer;
218+
219+ string appVersion = $"{asmInfo.Name} v{infoVer} ({asmVer})";
220+
221+ logger.Info("{0} initialized.", appVersion);
216222
217223 logger.Trace("OnStartup end");
218224 }
--- a/FolderCategorizer2.00App/FolderCategorizer2.00App.csproj
+++ b/FolderCategorizer2/FolderCategorizer2.csproj
@@ -2,11 +2,15 @@
22 <PropertyGroup>
33 <OutputType>WinExe</OutputType>
44 <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
5- <UseWPF>true</UseWPF>
5+ <VersionPrefix>1.0.0</VersionPrefix>
6+ <UseWPF>true</UseWPF>
67 <AssemblyName>FolderCategorizer2</AssemblyName>
78 <RootNamespace>FolderCategorizer2</RootNamespace>
89 <ApplicationManifest>app.manifest</ApplicationManifest>
910 </PropertyGroup>
11+ <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
12+ <VersionSuffix>pre$([System.DateTime]::Now.ToString(yyyyMMdd-HHmm))</VersionSuffix>
13+ </PropertyGroup>
1014 <ItemGroup>
1115 <None Remove="C:\Users\yoshy\.nuget\packages\nlog.config\4.7.13\contentFiles\any\any\NLog.config" />
1216 </ItemGroup>