مثلا من با گوگل اینو دیدم الان : http://www.artinsoft.com/vbc_csharpgen.aspx
ولی گفتم شاید شما طبق معمول مستقیم به هدف بزنید برای این راهکار و ابزارها هم
ویژوال استودیو را اجرا کنید و پروژه جدیدی از نوع ASP.NET Web Forms Application ایجاد کنید.
کلاس جدیدی با نام Product بسازید و خواص زیر را به آن اضافه کنید.
public class Product { public int Id { get; set; } public string Name { get; set; } public decimal Price { get; set; } public string Category { get; set; } }
در دیالوگ باز شده گزینه Web را از پانل سمت چپ کلیک کنید و نوع آیتم جدید را Web API Controller Class انتخاب نمایید. نام این کنترلر را به "ProductsController" تغییر دهید و OK کنید.
کنترلر ایجاد شده شامل یک سری متد است که بصورت خودکار برای شما اضافه شده اند، آنها را حذف کنید و کد زیر را به کنترلر خود اضافه کنید.
namespace WebForms { using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; public class ProductsController : ApiController { Product[] products = new Product[] { new Product { Id = 1, Name = "Tomato Soup", Category = "Groceries", Price = 1 }, new Product { Id = 2, Name = "Yo-yo", Category = "Toys", Price = 3.75M }, new Product { Id = 3, Name = "Hammer", Category = "Hardware", Price = 16.99M } }; public IEnumerable<Product> GetAllProducts() { return products; } public Product GetProductById(int id) { var product = products.FirstOrDefault((p) => p.Id == id); if (product == null) { throw new HttpResponseException(HttpStatusCode.NotFound); } return product; } public IEnumerable<Product> GetProductsByCategory(string category) { return products.Where( (p) => string.Equals(p.Category, category, StringComparison.OrdinalIgnoreCase)); } } }
مرحله بعدی اضافه کردن اطلاعات مسیریابی (routing) است. در مثال جاری میخواهیم آدرس هایی مانند "api/products/" به کنترلر Web API نگاشت شوند. فایل Global.asax را باز کنید و عبارت زیر را به بالای آن اضافه نمایید.
using System.Web.Http;
RouteTable.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = System.Web.Http.RouteParameter.Optional } );
تا اینجا شما یک API دارید که کلاینتها میتوانند به آن دسترسی داشته باشند. حال یک صفحهHTML خواهیم ساخت که با استفاده از jQuery سرویس را فراخوانی میکند. صفحه Default.aspx را باز کنید و کدی که بصورت خودکار در قسمت Content تولید شده است را حذف کرده و کد زیر را به این قسمت اضافه کنید:
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="WebForms._Default" %> <asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> </asp:Content> <asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> <h2>Products</h2> <table> <thead> <tr><th>Name</th><th>Price</th></tr> </thead> <tbody id="products"> </tbody> </table> </asp:Content>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent"> <script src="Scripts/jquery-1.7.1.min.js" type="text/javascript"></script> </asp:Content>
زیر تگ jQuery اسکریپت زیر را اضافه کنید.
<script type="text/javascript"> function getProducts() { $.getJSON("api/products", function (data) { $('#products').empty(); // Clear the table body. // Loop through the list of products. $.each(data, function (key, val) { // Add a table row for the product. var row = '<td>' + val.Name + '</td><td>' + val.Price + '</td>'; $('<tr/>', { text: row }) // Append the name. .appendTo($('#products')); }); }); } $(document).ready(getProducts); </script>
var first = someArray[0]; var second = someArray[1]; var third = someArray[2];
var [first, second, third] = someArray;
let [one, two, three] = ['globin', 'ghoul', 'ghost', 'white walker']; console.log(`one is ${one}, two is ${two}, three is ${three}`) // => one is globin, two is ghoul, three is ghost
let [firstMonster, , , fourthMonster] = ['globin', 'ghoul', 'ghost', 'white walker']; console.log(`the first monster is ${firstMonster}, the fourth is ${fourthMonster}`) // => one is globin, two is ghoul, three is ghost
let nested = [1, [2, 3], 4]; let [a, [b], d] = nested; console.log(a); // 1 console.log(b); // 2 console.log(d); // 4
let point = [1, 2]; let [xVal, yVal] = point; [xVal, yVal] = [yVal, xVal]; console.log(xVal); // 2 console.log(yVal); // 1
let pouch = {coins: 10};
let coins = pouch.coins;
let {coins} = pouch;
let pouch = {coins: 10}; let {coins: newVar1 } = pouch; console.log(newVar1); //10
let point = { x: 1, y: 2, z: { one: 3, two: 4 } }; let { x: a, y: b, z: { one: c, two: d } } = point; console.log(a); // 1 console.log(b); // 2 console.log(c); // 3 console.log(d); // 4
let mixed = { one: 1, two: 2, values: [3, 4, 5] }; let { one: a, two: b, values: [c, , e] } = mixed; console.log(a); // 1 console.log(b); // 2 console.log(c); // 3 console.log(e); // 5
function removeBreakpoint({ url, line, column }) { // ... }
function random ({ min=1, max=300 }) { return Math.floor(Math.random() * (max - min)) + min } console.log(random({})) // <- 174 console.log(random({max: 24})) // <- 18
jQuery.ajax = function (url, { async = true, beforeSend = noop, cache = true, complete = noop, crossDomain = false, global = true, // ... more config }) { // ... do stuff };
function returnMultipleValues() { return [1, 2]; } var [foo, bar] = returnMultipleValues();
function returnMultipleValues() { return { foo: 1, bar: 2 }; } var { foo, bar } = returnMultipleValues();
var {foo=3} = { bar: 2 } console.log(foo) // <- 3
var {foo=3} = { foo: 2 } console.log(foo) // <- 2
var {foo=3} = { foo: undefined } console.log(foo) // <- 3
var [b=10] = [undefined] console.log(b) // <- 10 var [c=10] = [] console.log(c) // <- 10
function inc(number, increment) { increment = increment || 1; return number + increment; } console.log(inc(2, 2)); // 4 console.log(inc(2)); // 3
function inc(number, increment = 1) { return number + increment; } console.log(inc(2, 2)); // 4 console.log(inc(2)); // 3
function sum(a, b = 2, c) { return a + b + c; } console.log(sum(1, 5, 10)); // 16 -> b === 5 console.log(sum(1, undefined, 10)); // 13 -> b as default
function getDefaultIncrement() { return 1; } function inc(number, increment = getDefaultIncrement()) { return number + increment; } console.log(inc(2, 2)); // 4 console.log(inc(2)); // 3
function sum(a, b, c) { return a + b + c; }
var args = [1, 2, 3]; console.log(sum(…args)); // 6
var args = [1, 2]; console.log(sum(…args, 3)); // 6
a = list[0], rest = list.slice(1)
[a, ...rest] = list
[1, 2].concat(more)
[1, 2, ...more]
list.push.apply(list, [3, 4])
list.push(...[3, 4])
function sum() { var numbers = Array.prototype.slice.call(arguments), result = 0; numbers.forEach(function (number) { result += number; }); return result; }
console.log(sum(1)); // 1 console.log(sum(1, 2, 3, 4, 5)); // 15
function sum(…numbers) { var result = 0; numbers.forEach(function (number) { result += number; }); return result; } console.log(sum(1)); // 1 console.log(sum(1, 2, 3, 4, 5)); // 15
function sum(…numbers, last) { // causes a syntax error