我有 2 个 NuGet 包:1 个主要包(YamatoDaiwaCS_Extensions)和 1 个本地化包(
OfficialLocalizations/Japanese
;将来,我计划进行更多本地化)。
为什么我在一个解决方案(和存储库)中有多个项目是因为,一旦实验完成,所有包都必须一致地更新、版本控制和发布。换句话说,它是单一存储库。
如果按原样发布日语本地化包,则将从
JapanesePhoneNumber
命名空间导入该库中的类(例如 Japanese
)。如何制作这个命名空间YamatoDaiwaCS_Extensions.OfficialLocalizations.Japanese
?
所需导入的示例:
using YamatoDaiwaCS_Extensions; // Core package
using YamatoDaiwaCS_Extensions.DataMocking; // Core package
using YamatoDaiwaCS_Extensions.Japanese; // Localization package
namespace YamatoDaiwaCS_Extensions {
// Your classes and code here
}
namespace YamatoDaiwaCS_Extensions.Japanese {
// Your classes and code here
}
AssemblyInfo.cs
文件包含正确的程序集信息,包括程序集名称。[assembly: AssemblyTitle("YourPackage")]
[assembly: AssemblyDescription("Description of YourPackage")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("YourCompany")]
[assembly: AssemblyProduct("YourPackage")]
[assembly: AssemblyCopyright("Copyright © YourCompany")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
<RootNamespace>YamatoDaiwaCS_Extensions</RootNamespace>
<RootNamespace>YamatoDaiwaCS_Extensions.Japanese</RootNamespace>
确保生成的 .nupkg 文件包含正确的程序集信息和结构。您可以使用 NuGet Package Explorer 等工具检查 NuGet 包的内容。
验证并设置适当的配置后,您可以使用 nuget pack 命令创建 NuGet 包。命名空间信息将是编译后的代码和项目结构所固有的。
nuget pack YamatoDaiwaCS_Extensions.csproj
nuget pack Japanase.csproj