AtomPubClient.CreateResourceAsync(Uri, String, SyndicationItem) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает новый ресурс Entry в указанной коллекции. Универсальный код ресурса (URI) коллекции, в которой создается новый ресурс, можно обнаружить из объекта ResourceCollection , полученного из метода RetrieveResourceAsync .
public:
virtual IAsyncOperationWithProgress<SyndicationItem ^, TransferProgress> ^ CreateResourceAsync(Uri ^ uri, Platform::String ^ description, SyndicationItem ^ item) = CreateResourceAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<SyndicationItem, TransferProgress> CreateResourceAsync(Uri const& uri, winrt::hstring const& description, SyndicationItem const& item);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<SyndicationItem,TransferProgress> CreateResourceAsync(System.Uri uri, string description, SyndicationItem item);
function createResourceAsync(uri, description, item)
Public Function CreateResourceAsync (uri As Uri, description As String, item As SyndicationItem) As IAsyncOperationWithProgress(Of SyndicationItem, TransferProgress)
Параметры
Универсальный код ресурса (URI) указанной коллекции, в которой должен быть создан новый ресурс.
- description
-
String
Platform::String
winrt::hstring
Описание нового ресурса, который преобразуется в заголовок Slug: запроса POST.
- item
- SyndicationItem
Новый ресурс, который необходимо создать.
Возвращаемое значение
Объект , который используется для асинхронного создания ресурса и отчета о ходе выполнения и состоянии завершения операции.
- Атрибуты
Примеры
В следующем коде показано, как получить доступ к сервисным документам и получить измененные значения URI. Чтобы получить дополнительные примеры использования AtomPub для управления содержимым веб-канала, скачайте пример AtomPub.
function createResource() {
try {
// Refresh client in case server url or credential have changed.
createClient();
var title = document.getElementById("titleField").value;
if (title === "") {
outputField.innerHTML = "Post title cannot be blank";
return;
}
var serviceUri = new Windows.Foundation.Uri(document.getElementById("serviceAddressField").value.trim() + defaultServiceDocUri);
outputField.innerHTML = "Fetching service document: " + serviceUri.absoluteUri + "</br>";
findEditUri(serviceUri).then(function (resourceUri) {
if (!resourceUri) {
outputField.innerHTML += "Error: Edit uri not found in service document";
return null;
}
outputField.innerHTML += "Uploading post: " + resourceUri.absoluteUri + "</br>";
var item = new Windows.Web.Syndication.SyndicationItem();
item.title = new Windows.Web.Syndication.SyndicationText(title, Windows.Web.Syndication.SyndicationTextType.text);
var content = document.getElementById("bodyField").value;
item.content = new Windows.Web.Syndication.SyndicationContent(content, Windows.Web.Syndication.SyndicationTextType.html);
return client.createResourceAsync(resourceUri, item.title.text, item);
}).done(function (result) {
if (result) {
outputField.innerHTML += "Posted at " + result.itemUri.absoluteUri + "</br>";
outputField.innerHTML += "Complete</br>";
}
}, onError);
}
catch (ex) {
outputField.innerHTML += "Exception:" + ex + "</br>";
}
}
Примечание
Код функции findEditUri, вызываемой в этом примере, см. в разделе RetrieveServiceDocumentAsync.