Revit Async 项目教程
1. 项目的目录结构及介绍
Revit Async 项目的目录结构如下:
Revit.Async/
├── README.md
├── Revit.Async.sln
├── src/
│ ├── Revit.Async/
│ │ ├── Properties/
│ │ ├── RevitTask.cs
│ │ ├── RevitTask.csproj
│ │ └── ...
│ └── ...
└── ...
目录结构介绍
README.md
: 项目说明文件,包含项目的基本信息和使用指南。Revit.Async.sln
: 项目的解决方案文件,用于在 Visual Studio 中打开和管理项目。src/
: 源代码目录。Revit.Async/
: 项目的主要代码目录。Properties/
: 包含项目的配置文件和属性设置。RevitTask.cs
: 核心类文件,包含 RevitTask 类的实现。RevitTask.csproj
: 项目的工程文件,定义项目的构建配置和依赖项。
2. 项目的启动文件介绍
项目的启动文件主要是 RevitTask.cs
,它包含了 Revit Async 库的核心功能。以下是 RevitTask.cs
的主要内容介绍:
public class RevitTask
{
// 初始化方法
public static void Initialize(UIApplication app);
// 运行同步代码,不带返回值
public static Task RunAsync(Action action);
// 运行同步代码,带返回值
public static Task<T> RunAsync<T>(Func<T> func);
// 运行异步代码,不带返回值
public static Task RunAsync(Func<Task> func);
// 运行异步代码,带返回值
public static Task<T> RunAsync<T>(Func<Task<T>> func);
}
启动文件介绍
Initialize(UIApplication app)
: 初始化 RevitTask 类,必须在有效的 Revit API 上下文中调用。RunAsync(Action action)
: 运行同步代码,不带返回值。RunAsync<T>(Func<T> func)
: 运行同步代码,带返回值。RunAsync(Func<Task> func)
: 运行异步代码,不带返回值。RunAsync<T>(Func<Task<T>> func)
: 运行异步代码,带返回值。
3. 项目的配置文件介绍
项目的配置文件主要位于 src/Revit.Async/Properties/
目录下,包括以下文件:
AssemblyInfo.cs
: 包含程序集的元数据信息,如版本号、作者、描述等。launchSettings.json
: 定义项目的启动设置,如调试配置、环境变量等。
配置文件介绍
-
AssemblyInfo.cs
:using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; [assembly: AssemblyTitle("Revit.Async")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Revit.Async")] [assembly: AssemblyCopyright("Copyright © 2023")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] [assembly: ComVisible(false)] [assembly: Guid("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")] [assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")]
-
launchSettings.json
:{ "profiles": { "Revit.Async": { "commandName": "Executable", "executablePath": "C:\\Program Files\\Autodesk\\Revit 2023\\Revit.exe", "commandLineArgs": "", "workingDirectory": "$(ProjectDir)" } } }
配置文件介绍
AssemblyInfo.cs
: 定义了程序集的元数据信息,如标题、描述、版本号等。launchSettings.json
: 定义了项目的启动设置,包括可执行