C# 无法从'out int' 转换为'out System.Int32'

方法中定义的是

 public Dataset GetSet(...,out int count){...}

在调用的时候

int num=0;
DataSet set = GetSet(...,out num);

报了两个错误:
1. 无法从'out int' 转换为'out System.Int32'
2. 与"GetSet(...,out System.Int32)" 最匹配的重载方法具有一些无效参数

但是仍然能运行,求问这是怎么回事

这个情况我也碰到过,就是vs的问题。。。简单的办法就是定义的时候带上命名空间。
System.Int32 num=0;
DataSet set = GetSet(...,out num);

从你的第2个错误推断可能是参数没写对,有VS异常截图吗

out是传出参数,与ref有点像,但偏重于输出,而且不用初始化,通过执行使用out参数的方法逻辑,out后面的数接受并返回这个值。
你参考一下下面的代码应该可以解决你的问题。
public DataSet getData(out int count)
{
dataset ds=bll.getdata(10,20);
int rcount=bll.GetCount();//比方说这个是取总记录数的
count=rcount;
return ds;
}

//显示的时候

public void showdata()
{
int count=0;

gridview1.datasource=getData(out count); 
gridview1.databind(); 

label1.text="共有"+count.tostring()+"条记录";
}