C# 跨程序集调用常量、变量和函数


今天在给人讲C#程序集概念的时候突然被问住了,囧啊。所以又认真地看了下C#程序集的功能,本文就是关于C#跨程序集调用其他程序集的常量、变量和函数。

步骤1:建立两个程序集,分别是C#下的“Windows窗体应用程序”和“类库”,分别取名为“AAAAA”和“BBBBB”。程序集“BBBBB”中的类被更名为MyClass

步骤2:修改程序集“BBBBB”,文件MyClass.cs中的代码如下:

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace BBBBB
{
    public class MyClass
    {
        /// <summary>
        /// 常量
        /// </summary>
        public const string DateInfo1 = "2015/1/5";
       
        /// <summary>
        /// 静态变量
        /// </summary>
        public static string DateInfo2 = "2015/1/5";
 
        /// <summary>
        /// 方法("打印Hello World!")
        /// </summary>
        public static void SayHi()
        {
            Console.WriteLine("Hello World!");
        }
    }
}

里面有一个常量DateInfo1、一个静态变量DateInfo2、一个向控制台打印字符串“Hello World!”的方法

步骤3:在程序集“AAAAA”的引用管理器中添加对程序集“BBBBB”的引用。程序集“AAAAA”的引用管理器可以在解决方案资源管理器中右键单击程序集“AAAAA”下面的“引用”,单击“添加引用”按钮进入。进入程序集“AAAAA”的引用管理器后,在左侧的树形菜单中,找到“解决方案”→“项目”,勾选里面的“BBBBB”,并按下面的“确定”按钮保存设置。

步骤4:这下载程序集“AAAAA”下面的代码中就可以using到程序集“BBBBB”的命名空间了

文件Program.cs中的代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
using BBBBB;
 
namespace AAAAA
{
    class Program
    {
        static void Main(string[] args)
        {
            //打印常量
            Console.WriteLine(BBBBB.MyClass.DateInfo1);
 
            //打印静态变量
            Console.WriteLine(BBBBB.MyClass.DateInfo2);
           
            //调用方法
            BBBBB.MyClass.SayHi();
 
            Console.ReadLine();
        }
    }
}

步骤5:生成解决方案,运行程序,运行结果如下:

其他:两个Debug目录下的文件构成

1)程序集“AAAAA”的Debug目录:(包括程序集“BBBBB”编译出来的全部信息)

2)程序集“BBBBB”下的Debug目录:

END

本文永久更新链接地址:

相关内容