场景:在go和python中方法可以返回多个值。在C#编程里,有时候也需要,特别是调用带返回值输出参数还有查询结果集的存储过程时候特别需要。
一般在dao里封装一个操作ADO.NET的方法,向上返回结果。在上层才判断逻辑的正确与否,并返回有好的应答到前端。在这里我就把返回值作为成功与否的判断标准,输出参数作为错误信息,再加上结果集的话,正好类似常用的json格式{'code':0,'msg':'','data':[]}。
那么C#方法返回多个结果,有哪些方式呢?
ref参数
void func(ref int a,ref int b) ...
int A ,B= 1; //初始化
func(ref A,ref B);
使用A,B;
out参数
void func(out int a,out int B)...
int A,B; //未初始化
func(out A,out B);
使用A,B;
元组
Tuple<int,int>
值元组
return <1,3>
类结构或集合
将过个结果放在类结构或集合里再返回。
在这里,结合我的需求,过程的返回值是int,输出参数一般是string,结果集是dataset或datatable,结构比较稳定。若是新建类或结构有点麻烦。可以参考下out或元组。
标签:C#,方法,int,func,返回值,ref,out From: https://www.cnblogs.com/thingk/p/16975575.html