public class bill
{
public class billModel
{
private decimal _price;
private decimal _number;
private decimal _discount;
private decimal _account;
private DateTime _date;
private bool _isPromotion;
private int _memberType; /// <summary>
/// 单价
/// </summary>
public decimal price
{
get { return _price; }
set { _price = value; }
}
/// <summary>
/// 数量
/// </summary>
public decimal number
{
get { return _number; }
set { _number = value; }
}
/// <summary>
/// 折扣
/// </summary>
public decimal discount
{
get { return _discount; }
set { _discount = value; }
}
/// <summary>
/// 金额
/// </summary>
public decimal account
{
get { return _account; }
set { _account = value; }
}
/// <summary>
/// 发生日期
/// </summary>
public DateTime date
{
get { return _date; }
set { _date = value; }
}
/// <summary>
/// 是否折扣
/// </summary>
public bool isPromotion
{
get { return _isPromotion; }
set { _isPromotion = value; }
}
/// <summary>
/// 会员类型: 0 普通会员,1 黄金会员,2 白金会员
/// </summary>
public int memberType
{
get { return _memberType; }
set { _memberType = value; }
} } public billModel GetAccount(decimal goodsPrice, decimal goodsNumber, int membertype,DateTime mydata)
{
billModel rs = new billModel();
rs.price = goodsPrice;
rs.number = goodsNumber;
rs.memberType = membertype;
rs.date = mydata;
switch (membertype)
{
case 0:
rs.isPromotion = false;
rs.discount = 1;
break;
case 1:
rs.isPromotion = true;
rs.discount = 0.9M;
break;
case 2:
rs.isPromotion = true;
rs.discount = 0.8M;
break;
}
rs.account = rs.price * rs.number * rs.discount;
return rs;
}
}
解决方案 »
- 關於一個控件的問題
- Stream 实例 出现异常
- 怎么样用C#语言获取当前系统的日期
- 在有多列数据的gridview中如何通过点击里面的linkbutton,读取到对应的序号列(超链接)的值,再使用该值修改数据库的值
- 求救——把文本文件上传到SQL数据库时遇到的问题
- 连接池都已被使用并已达到最大池大小的问题.如何解决?
- .net导出Excel,对单元格的操作,急..........
- 虚心求教一个按要求(有规律)自动生成字段值的问题!附有C#的方法,SQL怎么弄呢?
- c# webbrowser 获取无ID元素的值并且放到TextBox里,求示例代码
- 如何用一个值去替换MySortList<string, string>中某一个元素的对应值
- 小白求解决
- 小白求解决
{
/// <summary>
/// 单价
/// </summary>
public decimal Price { get; set; }
/// <summary>
/// 数量
/// </summary>
public decimal Count { get; set; } /// <summary>
/// 折扣
/// </summary>
public decimal Discount
{
get
{
if (IsPromotion)
return 0.6M; switch (MemberType)
{
case VIPType.Golden:
return 0.9M;
case VIPType.Platinum:
return 0.8M;
default:
return 1.0M;
}
}
}
/// <summary>
/// 金额
/// </summary>
public decimal Account
{
get
{
return Price * Discount * Count;
}
}
/// <summary>
/// 发生日期
/// </summary>
public DateTime Date { get; set; } /// <summary>
/// 是否折扣
/// </summary>
public bool IsPromotion { get; set; } /// <summary>
/// 会员类型: 0 普通会员,1 黄金会员,2 白金会员
/// </summary>
public VIPType MemberType { get; set; }
}public enum VIPType
{
Normal = 0,
Golden = 1,
Platinum = 2,
}
可以的,最好再封装下 属性的 权限。设计好联动。[/code]
这个类是需要赋值的,
比如:
BillModel bm=new BillModel();没在赋值方法,没有初始化方法,在大型应用里,这样写是很容易出错的,并且错误很难查找
这个类是需要赋值的,
比如:
BillModel bm=new BillModel();没在赋值方法,没有初始化方法,在大型应用里,这样写是很容易出错的,并且错误很难查找
可以放在构造函数中初始化,或者使用初始化器。没必要专门弄个赋值函数。
可以的,最好再封装下 属性的 权限。设计好联动。[/code]
仓促修改了一下,没考虑那么多,谢谢指点。