我正在寻找一个简单的wpf c#项目来计算一家英国公司的员工纳税。要做到这一点,我需要存储不经常更新的英国免税额。这些值应该是10000和45000(这些不是我知道的实际数字),但它们可能需要在将来更新。 我计划将应用程序存储在中央网络上。
我已经考虑过使用资源来存储这些值,但这会让用户更新这些值,我不想这样做。
我查看了隔离存储like here,但我认为当真正需要存储和更新用户进行更新时,不同用户可以更改其税限。
我读过的关于app.config文件的所有内容都表明,对于这样的变量来说,这不是正确的地方。
那么我应该怎么做才能存储这些数据?我想我可以放下一个Txt或XML文件,在这种情况下很好,但不会作为一个安全的选项,链接到SQL db似乎超过顶部
在这种情况下,最佳做法是什么?
谢谢
答案 0 :(得分:0)
如果安全扩展名不重要,您可以将值序列化到文件中。 Json很好很简单(使用json.net)。如果你需要更多的余量,你可以把它变成一个数组,而不是上下。
定义一个类;
public class Allowances
{
public decimal LowerAllowance { get; set; }
public decimal UpperAllowance { get; set; }
}
然后您可以将其序列化/反序列化为该文件。
var allowances = new Allowances
{
LowerAllowance = 10000m,
UpperAllowance = 45000m
};
File.WriteAllText("allowances.json", JsonConvert.SerializeObject(allowances));
var readAllowances = JsonConvert.DeserializeObject<Allowances>(File.ReadAllText("allowances.json"));
Console.WriteLine(readAllowances.LowerAllowance);
Console.WriteLine(readAllowances.UpperAllowance);
您可以在应用中创建一个加载值的屏幕,然后将其保存回来。