我从源代码管理中检查了一个解决方案并在 Visual Studio 中打开它。我的假设是这个解决方案是一次(两年前)编译并部署的。
有一个包含数据集的项目,我将其称为“数据集项目”。数据集具有在寻找 Properties 命名空间的 Designer.cs 文件中的 InitConnection() 方法中定义的连接字符串。
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
private void InitConnection() {
this._connection = new global::System.Data.SqlClient.SqlConnection();
this._connection.ConnectionString = global::<some namespace>.Properties.Settings.Default.<some connectionStringName>;
}
在解决方案资源管理器中,我看到一个似乎“丢失”的 Settings.settings 文件。事实上,当我检查它的内容时,Properties 文件夹是空的。缺少的设置是每个数据集中的编译错误。
我尝试将数据集的连接字符串设置为无,但它尝试将新值保存到 .settings 文件中,该文件失败并显示“警告 22 自定义工具 'SettingsSingleFileGenerator' 在处理文件 'Properties\ Settings.settings'.
" 消息——表面上是因为缺少 .settings 文件。
多一点挖掘揭示了在另一个引用数据集项目的项目中找到的完整的连接字符串。但是数据集项目没有(循环地)引用这个其他项目,并且无法使用我知道的它的连接字符串。
可以为数据集项目重新生成 .settings 文件吗?为什么有人会首先删除 .settings ?
谢谢!