2012-10-23 8 views
7

Làm cách nào để có được ngày/giờ mà mục được xuất bản lần cuối.Làm cách nào để có được ngày/giờ mà mục được xuất bản lần cuối trong Tridion

Tôi đã cố gắng tạo đối tượng để sắp xếp PublishInfoData để sử dụng PublishedAt.

PublishInfoData pobj = csClient.Read(pageTCMID, readoptions) as PublishInfoData; 

Nhưng điều này sẽ gây ra lỗi như không thể chuyển đổi IdentifiableObjectData thành PublishInfoData.

Vui lòng đề xuất.

Trả lời

8

này sẽ cung cấp cho bạn tất cả các công bố thông tin:

csClient.GetListPublishInfo(pageTCMID); 

Và sau đó bạn phải chọn mới nhất:

var publishInfo = csClient.GetListPublishInfo(pageTCMID); 
var lastPublishedAt = publishInfo.OrderByDescending(pi => pi.PublishedAt).First().PublishedAt; 
+0

Cảm ơn bạn đã trả lời. Khi thử nó, nó nói InvalidOperationException: Trình tự không chứa các phần tử. – user1658567

+1

Điều đó có nghĩa là 'publishInfo.OrderByDescending (pi => pi.PublishedAt)' không trả lại bất kỳ thứ gì và do đó '.First()' không thành công. Nhiều khả năng mục của bạn chưa được xuất bản. –

+0

Cảm ơn Frank chính xác của nó. @ user978511: Cảm ơn nó đã làm việc !! – user1658567

0

tôi thêm mã Powershell này cho các hồ sơ để có được ngày công bố cuối cùng của một trang

Set-TridionCoreServiceSettings sdswpap004 2013-SP1 
$client = Get-TridionCoreServiceClient 

Write-Output "Getting the title" 
$pageTitle = Get-TridionItem -Id "tcm:30-7386-64" | Select-Object Title 
Write-Output $pageTitle 

$publishInfo = $client.GetListPublishInfo("tcm:30-7386-64") 



if ($publishInfo) { 
    Write-Output "Getting the last pablished date: " 
    Write-Output $publishInfo.PublishedAt | Out-String 
}