c# - App.config 验证

标签 c# .net validation config

美好的一天。我认为所有 .Net Web 开发人员都面临着配置文件不正确的问题。 有时它没有连接字符串或设置或端点。

是否有验证和显示详细消息(例如“端点不可用”)的良好做法?

这种验证比在代码的某些地方处理 NullReferenceException 更好。它将帮助您了解问题的原因。部署团队可以自己解决这个问题

例如,我想检查接下来的事情: 1. AppSettings 中的某些值可以正确解析(解析为 int 或 datetime) 2.所有连接字符串正确,应用程序可以连接到它 3.所有端点都可用 4. 一些更具体的事情,比如:如果当前构建配置是 STG,那么所有端点都应该从 STG 等开始。

最佳答案

对于 connectionString 的示例,您必须创建一个 bool 函数,该函数在根据它编写消息之前返回一种 sql 异常失败的连接。这是您必须遵循的步骤:

1) 创建一个 bool 函数(例如名为 CheckConnection()) 来检查 connectionString(使用 try catch block 并在那里推送您想要的异常类型)

2) 在编写消息时继续执行 if 语句: 例如:

if (CheckConnection())
{
    Console.WriteLine("Database connection success");
}
else
{
    Console.WriteLine("Failed to connect to the database");
}

关于c# - App.config 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50056521/

相关文章:

.net - 是否可以在 VB.NET 中实例化接口(interface)的新实例

c# - BindingSource 上的 EndEdit 更新 DataTable,但 rowstate 仍未改变

html - 为什么 <a href> 不允许作为 <figure> 的 child

c# - 在其他线程加载数据时显示加载动画

forms - 如何在 Drupal 7 中使用表单验证

asp.net-mvc - ModelState.AddModelError 编码 HTML

c# - 尽管有 TryCatch 事件,异常仍从工作流中逃逸

c# - Task.Run 和 UI 进度更新

c# - 当 Value 为 null 时从 ConstantExpression 获取值类型

c# - .NET Core 中的自定义 "CoreLib"?