记录一个Visual Studio 编译BUG

记录一个Visual Studio 编译BUG

问题描述

问题起因是我的项目莫名其妙出现System.TypeLoadException: Method 'get_DisplayName' in type 'SWKeJiWorkFlow.HttpApi.Host.User' from assembly 'SWKeJiWorkFlow.HttpApi.Host, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' does not have an implementation.异常。

Host项目中User实现了其它项目定义的接口。

接口代码:

    /// <summary>
    /// 工作流用户
    /// </summary>
    public interface IWorkFlowUser : IEntity<Guid>
    {
        /// <summary>
        /// 用户名称
        /// </summary>
       public string DisplayName { get; }
    }

User类代码:

    public class User : Entity<Guid>, IWorkFlowUser
    {
        public string DisplayName { get; set; }
        public User() : this(string.Empty)
        { 
        }
        public User(string name) : this(Guid.NewGuid(), name)
        {

        }
        public User(Guid id,string name)
        {
            Id = id;
            DisplayName = name;
        }
    }

解决方法

尝试过【重新生成解决方案】、【清理解决方案】后再【生成解决方案】和网上各种方法均无效。

最后发现在生成的Debug文件夹中SWKeJiWorkFlow.HttpApi.Host生成的可执行文件创建日期和修改日期是旧的(当时忘了截图)。

于是删除掉整个Debug文件夹重新编译异常就消失了。

posted @ 2024-06-14 15:03  $("#阿飞")  阅读(3)  评论(0编辑  收藏  举报