Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
oleh Mike Wasson
Dalam tutorial sebelumnya, Anda membuat layanan OData dasar yang mendukung operasi CRUD. Sekarang mari kita buat klien untuk layanan.
Mulai instans baru Visual Studio dan buat proyek aplikasi konsol baru. Dalam dialog Proyek Baru, pilih Templat Terinstal>>Visual C#>Windows Desktop, dan pilih templat Aplikasi Konsol. Beri nama proyek "ProductsApp".
Catatan
Anda juga dapat menambahkan aplikasi konsol ke solusi Visual Studio yang sama yang berisi layanan OData.
Menginstal Generator Kode Klien OData
Dari menu Alat, pilih Ekstensi dan Updates. PilihGaleri Visual StudioOnline>. Di kotak pencarian, cari "OData Client Code Generator". Klik Unduh untuk menginstal VSIX. Anda mungkin diminta untuk memulai ulang Visual Studio.
Jalankan Layanan OData Secara Lokal
Jalankan proyek ProductService dari Visual Studio. Secara default, Visual Studio meluncurkan browser ke akar aplikasi. Perhatikan URI; Anda akan membutuhkannya di langkah berikutnya. Biarkan aplikasi berjalan.
Catatan
Jika Anda menempatkan kedua proyek dalam solusi yang sama, pastikan untuk menjalankan proyek ProductService tanpa penelusuran kesalahan. Pada langkah berikutnya, Anda harus menjaga layanan tetap berjalan saat Memodifikasi proyek aplikasi konsol.
Membuat Proksi Layanan
Proksi layanan adalah kelas .NET yang menentukan metode untuk mengakses layanan OData. Proksi menerjemahkan panggilan metode ke dalam permintaan HTTP. Anda akan membuat kelas proksi dengan menjalankan templat T4.
Klik kanan proyek. Pilih Tambahkan>Item Baru.
Dalam dialog Tambahkan Item Baru , pilih Visual C# Items>Code>OData Client. Beri nama templat "ProductClient.tt". Klik Tambahkan dan klik peringatan keamanan.
Pada titik ini, Anda akan mendapatkan kesalahan, yang dapat Anda abaikan. Visual Studio secara otomatis menjalankan templat, tetapi templat memerlukan beberapa pengaturan konfigurasi terlebih dahulu.
Buka file ProductClient.odata.config. Parameter Dalam elemen , tempelkan URI dari proyek ProductService (langkah sebelumnya). Contohnya:
<Parameter Name="MetadataDocumentUri" Value="http://localhost:61635/" />
Jalankan templat lagi. Di Penjelajah Solusi, klik kanan file ProductClient.tt dan pilih Jalankan Alat Kustom.
Templat membuat file kode bernama ProductClient.cs yang menentukan proksi. Saat Anda mengembangkan aplikasi, jika Anda mengubah titik akhir OData, jalankan templat lagi untuk memperbarui proksi.
Menggunakan Proksi Layanan untuk Memanggil Layanan OData
Buka file Program.cs dan ganti kode boilerplate dengan yang berikut ini.
using System;
namespace ProductsApp
{
class Program
{
// Get an entire entity set.
static void ListAllProducts(Default.Container container)
{
foreach (var p in container.Products)
{
Console.WriteLine("{0} {1} {2}", p.Name, p.Price, p.Category);
}
}
static void AddProduct(Default.Container container, ProductService.Models.Product product)
{
container.AddToProducts(product);
var serviceResponse = container.SaveChanges();
foreach (var operationResponse in serviceResponse)
{
Console.WriteLine("Response: {0}", operationResponse.StatusCode);
}
}
static void Main(string[] args)
{
// TODO: Replace with your local URI.
string serviceUri = "http://localhost:port/";
var container = new Default.Container(new Uri(serviceUri));
var product = new ProductService.Models.Product()
{
Name = "Yo-yo",
Category = "Toys",
Price = 4.95M
};
AddProduct(container, product);
ListAllProducts(container);
}
}
}
Ganti nilai serviceUri dengan URI layanan dari sebelumnya.
// TODO: Replace with your local URI.
string serviceUri = "http://localhost:port/";
Saat Anda menjalankan aplikasi, aplikasi harus menghasilkan yang berikut:
Response: 201
Yo-yo 4.95 Toys