c# - 编辑 Resources.resx 文件时,Resources.Designer.cs 无法更新,因为 TFS 未将其 checkout

标签 c# .net asp.net-mvc razor tfs

我正在使用 TFS 源代码管理。

当我向我的资源文件 - Resources.resx 添加一个新的资源 key 并点击保存时,TFS check out Resources.resx 但不 check out Resources.Designer.cs。这会导致对 Resources.Designer.cs 的更新失败并出现错误:

The command you are attempting cannot be completed because the file 'Resources.Designer.cs' that must be modified cannot be changed. If the file is under source control, you may want to check it out; if the file is read-only on disk, you may want to change its attributes.

enter image description here

错误是正确的,因为文件是只读的并且文件未 checkout 。我不想每次添加/编辑资源 key 时都必须手动检查设计器。有人知道解决方案或解决此问题吗?

请注意,我将 TFS 设置为“保存时 checkout ”而不是“编辑时 checkout ”。这是为了减少未经编辑的结账数量。

编辑:

这也发生在其他文件类型中。例如,我正在使用 RazorGenerator创建编译的 MVC View 。如果我尝试编辑 .cshtml 而没有先 checkout .generated.cs,则会出现同样的问题。

更新:

此问题发生在所有(据我所知)具有自动生成代码隐藏的文件上:.resx、.edmx、.aspx、.cshtml(当使用 RazorGenerator 编译 View 时)等。我我已经决定,仅仅为了设置“on edit: do nothing”设置是不值得的。我决定将其重置为“编辑时:自动结帐”。感谢大家的投入。不感谢 TFS 团队的这次失败。

最佳答案

好吧,我不认为这算作答案,所以我在评论中写下了它。 保存时 check out 仅在您保存文件时触发,它不会在自动生成文件时触发(自动生成不会触发进行 check out 的保存,因为此文件是由分配给 resx 的自定义工具编辑的)。

恐怕你不会得到正确的答案(解决你的问题的答案),除了它是设计使然,但可能值得在 connect 上立案。并要求改变这种行为。

关于c# - 编辑 Resources.resx 文件时,Resources.Designer.cs 无法更新,因为 TFS 未将其 checkout ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11428983/

相关文章:

c# - 代理验证错误

c# - 需要了解以下 C# 虚方法代码

c# - 为什么我不能在应用程序启动时调用 'new Window().ShowDialog()' 2 次?

c# - 在c#中显示下载进度

c# - 为什么还对 InternalsVisibleTo 引用的程序集进行了签名?

c# - 使用 OpenID(通过 DotNetOpenAuth)以及用户角色和其他成员(member)提供者功能

c# - ODP.NET 错误无法找到请求的 .Net Framework 数据提供程序

c# - 如何在 C# MVC 3 中返回空白 View

C# 无法处理文件 xxx.resx,因为该文件位于 Internet 或限制区域中或文件上带有 Web 标记

c# - 如何检查 EntityTypeConfiguration<T> 实例的成员配置?