c#-如何从字符串设置模型名称?
发布时间:2022-07-30 13:33:20 218
相关标签: # flask
我有三种型号:客户、订单、汽车
//i need replace to
public BindingList LoadData()
{
var fileExists = File.Exists(PATH);
if (!fileExists)
{
File.CreateText(PATH).Dispose();
return new BindingList();
}
using (var reader = File.OpenText(PATH))
{
var fileText = reader.ReadToEnd();
return JsonConvert.DeserializeObject<BindingList>(fileText);
}
}
但我需要创建一种通用方法来加载所有三个模型的数据,这样它就不会看起来像是同一个类的复制粘贴,其中只有模型名称不同。
//This code looks really stupid
public BindingList LoadDataCustomer()
{
var fileExists = File.Exists(PATH);
if (!fileExists)
{
File.CreateText(PATH).Dispose();
return new BindingList();
}
using (var reader = File.OpenText(PATH))
{
var fileText = reader.ReadToEnd();
return JsonConvert.DeserializeObject<BindingList>(fileText);
}
}
//Copy-paste and replace Customer to Order ..
public BindingList LoadDataOrder()
{
var fileExists = File.Exists(PATH);
if (!fileExists)
{
File.CreateText(PATH).Dispose();
return new BindingList();
}
using (var reader = File.OpenText(PATH))
{
var fileText = reader.ReadToEnd();
return JsonConvert.DeserializeObject<BindingList>(fileText);
}
}
//Copy-paste and replace Customer to Auto ..
public BindingList LoadDataAuto()
{
var fileExists = File.Exists(PATH);
if (!fileExists)
{
File.CreateText(PATH).Dispose();
return new BindingList();
}
using (var reader = File.OpenText(PATH))
{
var fileText = reader.ReadToEnd();
return JsonConvert.DeserializeObject<BindingList>(fileText);
}
}
问题是我需要再创建5个模型,对于每个模型,我必须创建自己的LoadData()类。这太愚蠢了。在我看来,如果我从要传递的字符串中获得模型的名称,那么代码看起来会更好。
//Get Model Name From String
public BindingList< Get Model Name From String > LoadData()
{
var fileExists = File.Exists(PATH);
if (!fileExists)
{
File.CreateText(PATH).Dispose();
//Get Model Name From String
return new BindingList< Get Model Name From String >();
}
using (var reader = File.OpenText(PATH))
{
var fileText = reader.ReadToEnd();
//Get Model Name From String
return JsonConvert.DeserializeObject<BindingList< Get Model Name From String >> (fileText);
}
}
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报