System.MissingMethodException HResult=0x80131513 Message=找不到方法:“Double Autodesk.Revit.DB.UnitUtils.ConvertFromInternalUnits(Double, Autodesk.Revit.DB.DisplayUnitType)”。 Source=waterfilter StackTrace: at waterfilter.Class1.Trans(String location, String origin) in C:\Users\Admin\Desktop\CSharpTest\waterfilter\Class1.cs:line 412 at waterfilter.Class1.Execute(ExternalCommandData commandData, String& message, ElementSet elements) in C:\Users\Admin\Desktop\CSharpTest\waterfilter\Class1.cs:line 195 at AddInManager.AIM.RunActiveCommand(ExternalCommandData data, String& message, ElementSet elements)
时间: 2024-04-17 17:28:40 浏览: 21
根据您提供的错误信息,看起来是您在使用C#编写的程序中出现了一个错误。错误信息显示找不到方法"Double Autodesk.Revit.DB.UnitUtils.ConvertFromInternalUnits(Double, Autodesk.Revit.DB.DisplayUnitType)"。这可能是由于您的程序中缺少必要的引用或没有正确地使用Revit API导致的。
要解决这个问题,您可以尝试以下几个步骤:
1. 检查引用:确保您的项目引用了正确的Revit API程序集,并且版本与您当前使用的Revit版本相匹配。您可以在Visual Studio中打开项目属性,然后检查引用列表。
2. 确认方法存在:确保您在代码中正确地调用了"ConvertFromInternalUnits"方法,并且方法的签名与API文档中所示的一致。
3. 检查命名空间:确认您在代码文件的顶部使用了正确的命名空间引用。在这种情况下,应该包含"Autodesk.Revit.DB"命名空间。
4. 清理和重建项目:有时候编译错误可能是由于缓存或生成文件的问题引起的。您可以尝试清理并重新生成项目,以确保所有文件都是最新的。
如果上述步骤仍然无法解决问题,那么可能需要更详细地检查您的代码和项目设置,以确定问题所在。您可以在相关的开发者社区或论坛上寻求帮助,以获得更具体的建议和解决方案。
相关问题
MissingMethodException: Method not found: 'System.Threading.Monitor.Enter'.
这个错误通常是由于您使用的 .NET Framework 版本与您正在使用的 Unity 版本不兼容所致。
您可以尝试以下解决方法:
1. 更新您的 .NET Framework 版本。请确保您的 .NET Framework 版本与您正在使用的 Unity 版本兼容。
2. 更新您的 Unity 版本。请确保您的 Unity 版本与您正在使用的 .NET Framework 版本兼容。
3. 检查您的项目中是否存在其他版本的 .NET Framework。如果是,请删除它们并重新编译您的项目。
4. 如果您使用了第三方库,请确保这些库与您正在使用的 .NET Framework 版本兼容。
如果您仍然遇到问题,请提供更多详细信息,例如您的 Unity 版本、使用的 .NET Framework 版本以及您的代码片段,以便更好地帮助您解决问题。
unity3D 连接mysql数据库 之 MissingMethodException: Method not found: 'System.Threading.Monitor.Enter'.
这问题可能是因为您使用的版本不兼容或缺少所需的程序集。请尝试升级您的 .NET Framework 版本,并确保您已经正确地安装了 MySQL 数据库驱动程序。
另外,您可能需要检查您的代码是否正确地使用了线程同步。在多线程环境中,访问共享资源时必须进行同步,以避免出现竞争条件。您可以使用 lock 或 Monitor 类来实现线程同步。
如果您仍然遇到问题,请提供更多详细信息,例如您的 Unity3D 版本、MySQL 数据库驱动程序版本以及您的代码片段,以便更好地帮助您解决问题。