c# – 如何快速返回方法的全限定名?

前端之家收集整理的这篇文章主要介绍了c# – 如何快速返回方法的全限定名?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Mvc;
  6.  
  7. namespace MvcMusicStore.Controllers
  8. {
  9. public class StoreController : Controller
  10. {
  11. //
  12. // GET: /Store/
  13.  
  14. public string Index()
  15. {
  16. return "MvcMusicsStore.Controllers.StoreController.Index";
  17. }
  18.  
  19. }
  20. }

如何快速返回方法的全资格名称

解决方法

没有任何硬编码?有可能吗
  1. public string Index()
  2. {
  3. return GetType().FullName + GetMemberName();
  4. }
  5.  
  6. static string GetMemberName([CallerMemberName] string memberName = "")
  7. {
  8. return memberName;
  9. }

或者也许更漂亮:

  1. public string Index()
  2. {
  3. return GetMemberName(this);
  4. }
  5.  
  6. static string GetMemberName(
  7. object caller,[CallerMemberName] string memberName = "")
  8. {
  9. return caller.GetType().FullName + "." + memberName;
  10. }

(我使用静态,因为我假设在真正的代码中,你想将方法放在一个实用程序类的某个地方)

猜你在找的C#相关文章