我有以下场景,我想获得实现接口的类的属性,但不包括那些虚拟的属性.为了说清楚,我将给你一个小例子: -
想象一下,我们有以下界面: -
public interface IUser
{
int UserID { get; set; }
string FirstName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
实现此接口的类: -
public class User: IUser
{
public int UserID { get; set; }
public string FirstName { get; set; }
public virtual int GUID { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
现在,我想要做的是获取除了虚拟的类的属性.当类没有实现接口时,以下工作正常: -
var entityProperties = typeof(User).GetProperties()
.Where(p => p.GetMethod.IsVirtual == false);
Run Code Online (Sandbox Code Playgroud)
但是,当实现接口时,上面的代码行不会返回任何结果.如果我删除'where'它工作正常(但虚拟属性不会被排除),如下所示:
var entityProperties = typeof(User).GetProperties();
Run Code Online (Sandbox Code Playgroud)
有人有任何想法吗?我搜索但是我无法找到任何结果.在此先感谢您的帮助.
这可能是一个简单的问题,但我在最后一个小时左右的时间里一直在试验而没有成功的结论.基本上,我有以下HTML:
<div data-trackcolor="#f39e93" data-size="60" data-linewidth="3" data-animate="500" data-percent="0" data-linecap="butt" data-barcolor="#fff" class="easyPieChart" data-toggle="easypiechart" style="width: 60px; height: 60px; line-height: 60px;">
<span class="white font-90">0%</span>
<canvas height="65" width="65" style="width: 60px; height: 60px;"></canvas>
</div>
Run Code Online (Sandbox Code Playgroud)
我正在尝试data-trackcolor使用以下jQuery语法更改元素的值:
$('[data-toggle=easypiechart]').data('trackcolor','#f39e93');
Run Code Online (Sandbox Code Playgroud)
我也试过了$(".easyPieChart").attr("data-trackcolor", "#f39e93");.
价值在变化,颜色不变.我怀疑这是因为canvas元素.为了理解此标记的作用,您可以查看以下URL.
它在彩色数据箱中显示圆圈.如果有人可能有一些想法,为什么这不起作用,我将不胜感激.
谢谢.
我正在创建一个 Web 应用程序,它调用一个 DLL 来运行单元测试,我还有另一个 DLL(DataAccessLayer),它执行连接并执行对引用主 DLL 的 SQL 的查询。这两个 DLL 使用相同的配置文件来读取设置。
从 VS 运行应用程序时,应用程序工作正常。但是,当 Web 应用程序部署到 IIS 时,DLL 似乎无法从配置文件中读取设置。
经过一番研究,我发现我可能必须在 web.config 文件中明确定义配置元素,但是我不知道如何实现这一点。有人可以指出我正确的方向吗?
我实际上是通过以下代码使用 ConfigurationManager 检索设置:-
public string GetValue(string key)
{
var appConfig = ConfigurationManager.OpenExeConfiguration("path to dll");
strKeyValue = appConfig.AppSettings.Settings[key].Value;
return strKeyValue;
}
Run Code Online (Sandbox Code Playgroud)
谢谢。