using System.Threading.Tasks;
using System.Data.Entity;
public int ID {get; set;}
public string Name {get; set;}
public int ID {get; set;}
public string Name { get; set;}
public string Status {get; set;}
public int Price {get; set;}
public class ProductOrder
public int ProductID {get; set;}
public int UserID {get; set;}
public int Price {get; set;}
public class MyDbContext : DbContext
public DbSet<User> Users;
public DbSet<Product> Products;
public DbSet<ProductOrder> ProductOrders;
public class MyRepository
public Product GetProductById(int id)
var myContext = new MyDbContext();
var allProducts = myContext.Products.ToList();
return allProducts.First(x=> x.ID == id);
public void DeleteProductsByStatus(string status)
var myContext = new MyDbContext();
myContext.Database.ExecuteSqlCommand("DELETE FROM Products WHERE Status ='" + status + "'");
public void CreateNewProductOrder(ProductOrder newProductOrder)
var myContext = new MyDbContext();
myContext.ProductOrders.Add(newProductOrder);
myContext.SaveChangesAsync().Wait();
public class ProductsController : ApiController
[Route("api/order-product")]
public void OrderProduct([FromUri] int userID, [FromUri] int productID, [FromUri] int price)
var newProductOrder = new ProductOrder()
var repo = new MyRepository();
repo.CreateNewProductOrder(newProductOrder);