从int转换为byte

时间:2010-01-28 18:12:49

标签: c# type-conversion byte

System.ArgumentException: Object must be of type Int32.

在此代码中:

MyBO target = new MyBO() { x1 = 20 };

MyBO我有一个属性:public byte x1 {get; set;}

怎么了?我试过MyBO target = new MyBO() { x1 = (byte)20 };,但我得到了同样的错误。 请帮忙。

谢谢!

3 个答案:

答案 0 :(得分:3)

MYBO target=new MyBO();
target.x1=Convert.ToByte(20);

答案 1 :(得分:2)

你确定错误来自那条线吗?我没有问题地运行这段代码:

class MyBO
{
    public byte x1 { get; set; }   
}

// ...
public static void Main(string[] args)
{
    MyBO my1 = new MyBO() {x1 = 20};
    MyBO my2 = new MyBO() {x1 = (byte)20};
    MyBO my3 = new MyBO() {x1 = Convert.ToByte(20)};
}

答案 2 :(得分:0)

您是否尝试过显式转换为字节?


MyBO target = new MyBO() { x1 = (byte) 20 };