如何验证NuGet添加到项目中的内容文件是否未被触及

如何验证NuGet添加到项目中的内容文件是否未被触及,nuget,nuget-package,Nuget,Nuget Package,我们有一个包含大量内容文件的NuGet包。 我们想迫使开发人员只通过NuGet update而不是直接更改这些文件 问题1: 我们将如何实现这一目标 我们已经考虑过构建时验证,我们需要知道原始文件的校验和 问题2: 构建时验证听起来像是一种正确的方法吗 计算这些校验和的可能选项有: 在安装时,计算内容文件的校验和并将其保存在某个位置。 A.在项目项元数据/属性中 缺点:似乎没有办法向install.ps1中的项目项添加新属性 B在单独的文件中,并将其添加到源代码管理 缺点:需要复制NuGet.C

我们有一个包含大量内容文件的NuGet包。 我们想迫使开发人员只通过NuGet update而不是直接更改这些文件

问题1: 我们将如何实现这一目标

我们已经考虑过构建时验证,我们需要知道原始文件的校验和

问题2: 构建时验证听起来像是一种正确的方法吗

计算这些校验和的可能选项有:

在安装时,计算内容文件的校验和并将其保存在某个位置。 A.在项目项元数据/属性中 缺点:似乎没有办法向install.ps1中的项目项添加新属性 B在单独的文件中,并将其添加到源代码管理 缺点:需要复制NuGet.Core逻辑 在NuGet包构建期间计算这些校验和,将一种目录文件存储到一个文件中,并将该文件作为内容添加到NuGet包中 将项目中文件的内容与NuGet存储库中相同文件的内容进行比较。缺点:如何找到某个文件所属的NuGet包? 问题3:
是否有一种传统的方法在构建时验证时实现这一点

这些是什么类型的内容文件?如果它们不应该被编辑,也许你应该将它们添加为资源。请参见包含配置设置的这些内容文件。EmbeddedResourceVirtualPathProvider看起来很有趣。但它只为网络应用服务。控制台应用程序是否有类似的功能?