从 SQL 表生成 C# dll
本文关键字:dll SQL | 更新日期: 2023-09-27 18:35:15
我有一个包含三列的SQL表:Id,英语和挪威语。Id 是主键。在我的应用程序中,我有一个标志(EN/NO)来决定将哪种语言用于GUI中的标签,按钮++。现在,应用程序每次加载时都会执行 select *,并且应用程序在运行时查找所有必需的值。但是,我想导出这些值并创建一个 dll,以便我可以在本地存储这些值,而不是为每个实例加载整个数据集。
是否有可能在代码中创建此代码,以便 dll 在每次构建时自行更新?还是我必须运行一些外部程序来动态创建 ex. 一个.cs代码以复制/粘贴到我的类中?(我需要能够重新运行该过程,因为每次需要新标签/文本时都会添加行)
到目前为止,我已经考虑了三种关于如何构建导出的解决方案,但对如何导出数据一无所知:
-
在静态上下文中保留 DataTable 的状态,并提供帮助方法来标准化获取值的方式。
-
创建一个包含每个唯一 ID 作为方法名称的类,以及一个参数来决定返回哪个值:
public static class Names { public static string 12345(string language) { switch (language) { case "EN": return "Hello"; case "NO": return "Hei"; default: return "Hello"; } } }
-
创建一个类,其中包含每种语言的可搜索列表,ID 作为键和值(作为值)
为什么不为不同的语言创建不同的资源文件,并根据设置加载相应的资源文件。您可以使用 System.Resources.ResourceManager
.本文在此处详细解释了这一点。
编辑:以下SO帖子还详细讨论在C #/WinForms中制作多语言应用程序的最佳实践?
不,我不喜欢将国际化字符串放入类库的想法,为什么您不只使用框架中已经内置的 .NET 国际化功能?
资源文件是最好的解决方案,而不是此类工作的类库......