我的问题非常简单,我的目的是生成一个包含您的响应的存储库,以便在选择用于开发企业通用应用程序的框架时可以为社区服务.这非常适用于C++,C#或Java等通用语言.
只有在IDataRecord中存在field_name时才有更好的方法从IDataRecord获取field_name值,目前我正在使用try {...} catch {...}块,但这是某种On Error接下来继续.一些替代品?
/// <summary>
/// Returns column value from IDataRecord only if field_name exists.
/// </summary>
public static Tresult ValueIfExists<Tresult>(this IDataRecord record, string field_name)
{
try { return record.Value<Tresult>(record.GetOrdinal(field_name)); }
catch { return default(Tresult); }
}
/// <summary>
/// Returns column value from IDataRecord accecing by index.
/// </summary>
public static Tresult Value<Tresult>(this IDataRecord record, int field_index)
{
return record.IsDBNull(field_index) ? default(Tresult) :
(Tresult)Convert.ChangeType(record[field_index], typeof(Tresult));
}
Run Code Online (Sandbox Code Playgroud)
我已经更改了我的ValueIfExists函数以反映您的想法,所以它看起来像这样:
public static Tresult ValueIfExists2<Tresult>(this …Run Code Online (Sandbox Code Playgroud) 我遇到了一些应用程序的问题.当我在本地磁盘上执行它时,一切都是正确的,但是当我尝试从共享资源(Z:\ resource\TheApplication.exe)执行相同的应用程序时,我收到以下错误:
Error occurred creating the configuration section handler for DOMAIN/DomainUserInfo: Request failed
Run Code Online (Sandbox Code Playgroud)
尝试读取时出现错误自定义栏目中的配置文件:
public static class AppConfigFile {
public static IDomainUserInfo DomainUserInfo {
get {
if (_domainUserInfo == null) {
_domainUserInfo = (DomainUserInfo)ConfigurationManager.GetSection(Environment.UserDomainName + @"/DomainUserInfo");
} return _domainUserInfo as IDomainUserInfo;
}
}
}
public class DomainUserInfo : ConfigurationSection, IDomainUserInfo {
[ConfigurationProperty("SomeConfiguration", IsRequired = true, DefaultValue = "")]
public string SomeConfiguration { get { return (string)base["SomeConfiguration"]; } }
[ConfigurationProperty("OtherConfiguration", IsRequired = true, DefaultValue = "")]
public …Run Code Online (Sandbox Code Playgroud) 我需要一些正则表达式的.NET,下面的匹配模式:YYYYMM
哪里:
我已经完成了下面这个问题,它包含无效的月份值.
[2]{1}[0]{1}[0-4]{1}[0-9]{1}[0-1]{1}[0-9]{1}
Run Code Online (Sandbox Code Playgroud)
有什么建议吗?