我在SimpleRepository中使用Subsonic:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SubSonic.DataProviders;
using SubSonic.Repository;
namespace SubSonicTest
{
class Program
{
public class Product
{
public int ProductID { get; set; }
public int CategoryID { get; set; }
public string ProductName { get; set; }
public decimal UnitPrice { get; set; }
public bool Discontinued { get; set; }
}
static void Main(string[] args)
{
var repo = new SimpleRepository("SubSonic", SimpleRepositoryOptions.RunMigrations);
var newProduct = new Product();
newProduct.CategoryID = 5;
newProduct.ProductName = "Pretzel";
newProduct.UnitPrice = 100;
newProduct.Discontinued = false;
repo.Add<Product>(newProduct);
}
}
}
然而,当我运行它时,我得到:列'CategoryID'不能为空 这是MySQL和Windows和VS2008。有什么想法吗?
由于
答案 0 :(得分:1)
尝试更改类属性定义;
public int? CategoryID { get; set; }
您无法将int类型设置为null。