如何使用api c#查找所有者以及最后一次更新Revit文件中的对象#

时间:2017-06-09 16:10:08

标签: c# api revit

我正在尝试创建一个应用程序,可以在工作共享文件中查找模型中的对象,如所有者,上次更新,上次更新日期等等。我找不到任何关于它的教程或示例。 有人知道吗? 谢谢

1 个答案:

答案 0 :(得分:0)

http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=2484975下载Revit SDK。

搜索WorksharingUtils类。有一个代码示例,可以显示可用的信息。

希望这有帮助。

public void GetElementWorksharingInfo(Document doc, Element elem)
{
    String message = String.Empty;
    message += "Element Id: " + elem.Id;

    // The workset the element belongs to
    WorksetId worksetId = elem.WorksetId;
    message += ("\nWorkset Id : " + worksetId.ToString());

    // Model Updates Status of the element
    ModelUpdatesStatus updateStatus = WorksharingUtils.GetModelUpdatesStatus(doc, elem.Id);
    message += ("\nUpdate status : " + updateStatus.ToString());

    // Checkout Status of the element
    CheckoutStatus checkoutStatus = WorksharingUtils.GetCheckoutStatus(doc, elem.Id);
    message += ("\nCheckout status : " + checkoutStatus.ToString());

    // Getting WorksharingTooltipInfo of a given element Id
    WorksharingTooltipInfo tooltipInfo = WorksharingUtils.GetWorksharingTooltipInfo(doc, elem.Id);
    message += ("\nCreator : " + tooltipInfo.Creator);
    message += ("\nCurrent Owner : " + tooltipInfo.Owner);
    message += ("\nLast Changed by : " + tooltipInfo.LastChangedBy);

    Autodesk.Revit.UI.TaskDialog.Show("GetElementWorksharingInfo", message);
}