如何在 C# 中按类型查找 .cs 文件的路径

2023-12-21

如何按类型查找 .cs 文件的路径?

函数原型:

string FindPath(Type);

返回类似“C:\Projects\.....\MyClass.cs”的内容


在.Net 4.5中你可以使用CallerFilePath反射属性(来自MSDN):

// using System.Runtime.CompilerServices 
// using System.Diagnostics; 

public void DoProcessing()
{
    TraceMessage("Something happened.");
}

public void TraceMessage(string message,
        [CallerMemberName] string memberName = "",
        [CallerFilePath] string sourceFilePath = "",
        [CallerLineNumber] int sourceLineNumber = 0)
{
    Trace.WriteLine("message: " + message);
    Trace.WriteLine("member name: " + memberName);
    Trace.WriteLine("source file path: " + sourceFilePath);
    Trace.WriteLine("source line number: " + sourceLineNumber);
}

// Sample Output: 
//  message: Something happened. 
//  member name: DoProcessing 
//  source file path: c:\Users\username\Documents\Visual Studio 2012\Projects\CallerInfoCS\CallerInfoCS\Form1.cs 
//  source line number: 31

See: http://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.callerfilepathattribute(v=vs.110).aspx http://msdn.microsoft.com/en-us/library/system.runtime.compilerservices.callerfilepathattribute(v=vs.110).aspx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 C# 中按类型查找 .cs 文件的路径 的相关文章

随机推荐

  • Linux 上的 Swift:迈出第一步

    我对斯威夫特完全陌生 它刚刚作为 Linux 的开源版本发布 我想尝试一下 这是在 ubuntu 14 04 上 clang 已根据先决条件安装
  • 添加过多 ID 对 html / js 渲染性能的影响

    我目前正在进行的一个项目大约有 10 个 UL 每个 UL 包含 10 50 个元素 建议每个元素都有一个指定的唯一 ID 我们将使用它通过 Javascript 更新内容 这看起来需要向页面添加大量 ID 但每个字段都会有一个真实且有意义
  • Flutter 上的简单可扩展列也不会具有“标题”>“可扩展”

    我正在尝试制作一个可扩展的列 也就是说 它有 2 个子项 子项和展开小部件时出现的子项 在下图中 您可以看到子项 蓝色 和展开的子项 红色 它们仅应在Expand gt 单击按钮 一切正常 但无论我做什么 我都无法得到Expand gt 按
  • Oracle 如果行不存在则插入

    insert ignore into table1 select value1 value2 from table2 where table2 type ok 当我运行这个时 我收到错误 缺少 INTO 关键字 当我运行这个时 我收到错误
  • HBase 表上的 SparkSQL

    任何人都直接在 HBase 表上使用 SparkSQL 就像在 Hive 表上使用 SparkSQL 一样 我是spark新手 请指导我如何连接hbase和spark 如何查询hbase表 AFAIK 有 2 种方法连接到 hbase 表
  • iOS - 使用 AVPlayer 检测 URL 流是否正常工作

    这就是我的代码中从 url 播放的样子 private func play let streamUrl let playerItem AVPlayerItem url streamURL radioPlayer AVPlayer playe
  • ls | 的输出厕所-l

    通常输出为wc l命令给出文件中的行数 但是 当我们通过管道输出ls命令它 它似乎正确显示当前工作目录中的文件和目录以及链接的数量 我的问题是输出ls命令在同一行中显示某些文件和目录的名称 那么 为什么在这种情况下使用ls wc l与相比
  • 如何使用 Powershell 更改文件的属性?

    我有一个 Powershell 脚本 可以将文件从一个位置复制到另一个位置 复制完成后 我想清除源位置中已复制的文件的存档属性 如何使用 Powershell 清除文件的 Archive 属性 您可以使用旧的 dos attrib 命令 如
  • 以编程方式更改 ABAddressBook、ABPersonCopyArrayOfAllLinkedPeople 中的链接联系人数组

    是否可以通过编程方式添加 删除 CFArray 返回的联系人ABPersonCopyArrayOfAllLinkedPeople 因此 有效地链接和取消链接来自不同来源的不同联系人记录 以在 iOs 电话簿中显示为 统一 据我所知 至少在
  • 如何在java中打开第2层原始套接字?

    如何在java中打开第2层原始套接字 在 C 中 我们通常使用 AF PACKET 级别来打开具有 sockaddr ll 结构的第 2 层原始套接字 二层编程对应的socket包是什么 使用普通的 Java 方法这是不可能的 因为 Jav
  • 使用 nuxtJS + Vue2-Editor 时如何解决文档未定义错误?

    我正在尝试使用 vue2 editor 设置 nuxtjs 应用程序 如果我尝试通过客户端导航导航到编辑器页面 则其加载但如果我直接访问或刷新 例如 com editor 页面 我收到文档未定义错误 我已经识别出它是因为 vue2 编辑器不
  • 如何交换 observableArray 中的两个项目?

    我有一个按钮 可以将 observableArray 中的项目向左移动一个位置 我正在按照以下方式进行操作 然而 缺点是categories index 被从数组中删除 从而丢弃了该节点上的任何DOM操作 在我的例子中是通过jQuery验证
  • NUnit 异步测试导致 AppDomainUnloadedException

    我有一个带有异步操作的 NET 4 5 WCF 服务 我进行了集成测试 它使用 NetNamedPipeBinding 构建服务主机并通过客户端进行操作 然而 每次这样的测试总是会导致 NUnit 报告以下内容 System AppDoma
  • 在 DBAccess 中关联两个对象

    我正在为我的 iOS 项目使用 dbaccess 如何将数组传递给 dbaccess 对象 例如 我有像这样的 dbobject interface Member DBObject property strong NSString firs
  • 如何发送带有参数的 getForObject 请求 Spring MVC

    我在服务器端有一个方法 它为我提供有关在我的数据库中注册的特定名称的信息 我正在从我的 Android 应用程序访问它 向服务器的请求正常完成 我想做的是根据我想要获取的名称将参数传递给服务器 这是我的服务器端方法 RequestMappi
  • 我应该严格避免在 Android 上使用枚举吗?

    我曾经定义一组相关的常量 例如Bundle在如下界面中组合键 public interface From String LOGIN SCREEN LoginSCreen String NOTIFICATION Notification St
  • C++ 枚举从 0 开始吗​​?

    如果我有一个enum不给枚举分配数字 它的序数值会是 0 吗 例如 enum enumeration ZERO ONE TWO THREE FOUR FIVE SIX SEVEN EIGHT NINE 我已经找到了帖子引用 C99 标准需要
  • 如何在 Angular 6 中创建级联下拉列表(国家和州列表)

    如何在 Angular 6 中创建级联下拉列表 国家 地区和州列表 我想要在 Angular 6 中创建一个完整的国家 地区和州列表 任何知道这一点的人请分享你的想法 演示 gt 级联下拉菜单 国家和州列表 https stackblitz
  • 使用 NUnit 测试 Windows 8 应用商店应用程序

    我目前正在为一门课程开发 Windows 应用商店应用程序 Windows 8 但在运行 NUnit 测试时遇到问题 我的解决方案 项目设置如下所示 TheMetroApp sln SQLite net csproj 类库 Windows
  • 如何在 C# 中按类型查找 .cs 文件的路径

    如何按类型查找 cs 文件的路径 函数原型 string FindPath Type 返回类似 C Projects MyClass cs 的内容 在 Net 4 5中你可以使用CallerFilePath反射属性 来自MSDN using