【发布时间】:2021-07-30 01:46:00
【问题描述】:
寻求正确使用 C# using 语句的最佳输入。我可以在参数对象上使用using 语句,如以下不常见的示例代码 sn-p(即,多层应用程序)吗?
虽然sn-p的代码和我觉得using语句应该在'Business'类的ProcessFileAndReturnNumberFromStream()方法不同。
为什么在通过参数传递的对象上使用 using 语句是一种不常见的做法?请更正或详细说明缺陷?
using System;
using System.IO;
class Data
{
public double? GetNumberFromStream(StreamReader sr)
{
double? number;
try
{
using (sr)
{
number = Convert.ToDouble(sr.ReadToEnd());
return number;
}
}
finally
{
number = null;
}
}
}
class Business
{
public double? ProcessFileAndReturnNumberFromStream()
{
string fileName = "Test.txt";
StreamReader sr = new StreamReader(fileName);
Data dat = new Data();
return dat.GetNumberFromStream(sr);
}
}
class GUI
{
static void Main()
{
Business bus = new Business();
double? number = bus.ProcessFileAndReturnNumberFromStream();
Console.WriteLine(number);
Console.ReadKey();
}
}
请帮忙。
谢谢
【问题讨论】:
标签: c#