小编Neu*_*ekt的帖子

如何确定调用方法和类名?

我目前正在使用内置的TraceListener开发应用程序日志库.这个库将在许多项目中使用,并且应该提供一个简单的界面,我只需要关心将什么内容写入日志文件,而不是如何.

通过使用反射命名空间,我可以找出当前称为日志函数的应用程序(检索执行程序集名称),但我还想要调用日志记录函数的函数和类的名称.

比方说我有:

public static void LogInfo(string vLogText) {
   Trace.WriteLine(
        MethodInfo.GetCurrentMethod().Name
        + this.GetType().ToString() + vLogText);
   }
Run Code Online (Sandbox Code Playgroud)

当我从另一个项目调用时(类:TestClass,方法:TestMethod)

Tracer.LogInfo("log this!")
Run Code Online (Sandbox Code Playgroud)

我希望在日志中看到:

TestClass, TestMethod, log this!
Run Code Online (Sandbox Code Playgroud)

但相反,我得到了

TracerClass, LogInfo, log this!
Run Code Online (Sandbox Code Playgroud)

如何获取父方法和类名?

.net c# reflection logging .net-assembly

38
推荐指数
1
解决办法
6万
查看次数

数据库管理库

在我们公司,我们与多个数据库系统(MySQL,MSSQL,PL/SQL,SQlite和SQLCe)合作开展各种项目.因此,我们开发了一个库,将所有内容放入一个很好的界面,我们可以连接到每个数据库,而不必担心现在背后的数据库.但是这个库总是需要在客户端计算机上安装每个数据库,因为.Net坚持认为(因为引用).因此,我们使用MEF创建数据库插件,其中应用程序仅在启动时加载适当的插件,并且我们不需要在主机系统上安装任何其他数据库系统.

无论如何,由于每个数据库的不同,我们仍然在努力.假设我们希望程序能够在目标数据库中自动生成所需的表和数据(如果它们不可用).或者,如果不同的数据库使用不同的数据类型.事情变得非常复杂,至于现在,我们也对使用LINQ2SQL感兴趣,LINQ2SQL似乎无法处理MySQL,SQlite和PL/SQL.

我的问题:

是否有任何免费/ oss C#库接管这项任务?我们可以完全控制我们的数据库而不考虑现在背后的数据库?

c# database plugins

7
推荐指数
1
解决办法
3372
查看次数

按子网掩码计算IP范围

如果我有子网掩码,例如255.255.255.0IP地址192.168.1.5,是否有一种简单的方法来确定该子网内所有可能的IP地址?

在这种情况下:

192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
...
...
192.168.1.252
192.168.1.253
192.168.1.254
192.168.1.255
Run Code Online (Sandbox Code Playgroud)

直到现在我发现的都是重载的.net库.是否有任何本地方法使用默认名称空间解决此问题?

c# ip networking subnet

6
推荐指数
2
解决办法
1万
查看次数

LINQ的结果.任何字符串

所以,我检查一个字符串是否包含来自数组的某个单词,并带有以下语句:

if(stringArray.Any(s => stringToCheck.Contains(s)))
Run Code Online (Sandbox Code Playgroud)

简单.现在找到匹配并且该陈述为真.但我想知道数组中哪个项与字符串匹配.上面LINQ语句中的占位符"s"在以下子句中不可用.

希望有人有个主意.我可以循环遍历数组,是的,但LINQ对我来说看起来更好.=)

c# linq string contains

4
推荐指数
1
解决办法
340
查看次数

标签 统计

c# ×4

.net ×1

.net-assembly ×1

contains ×1

database ×1

ip ×1

linq ×1

logging ×1

networking ×1

plugins ×1

reflection ×1

string ×1

subnet ×1