C#中三种using关键字用法与示例
using System;namespace Fountain.WinConsole.Demo{}
1、using <命名空间的完整名称>
// 三方库引用using MimeKit;// .NET 库引用using System;// 自建库引用using Fountain.Utility
2、global using <命名空间的完整名称>
// GlobalUsing.cs// .NET 库引用global using System;global using System.Collections.Generic;global using System.Linq;global using System.Text;// 三方日志库引用global using log4net;// 自建库引用using Fountain.Utility
3、using static <命名空间的完整名称>
using static System.Console;using static System.Math;
4、global using static <命名空间的完整名称>
// GlobalUsing.cs// .NET 库引用global using System;global using static System.Console;global using static System.Math;// 三方日志库引用global using log4net;// 自建库引用using Fountain.Utility
[global] using [static] <别名>=<命名空间的完整名称>
// 自建库引用using Fountain=Fountain.Utility;// .NET库定义别名using SText = System.Text;
using (SmtpClient smtpClient = new SmtpClient()){ // 设置smtp的服务地址 smtpClient.Host = "smtp.qq.com"; //设置邮箱使用的端口,这里以QQ邮箱为例 smtpClient.Port = 587; // 是否使用SSL smtpClient.EnableSsl = true; // 设置是否使用默认凭据 smtpClient.UseDefaultCredentials = true; // userName-邮箱名称;password-根据服务提供商不同而定如QQ邮箱、163 都是使用授权码 // 授权码获取登录网页版的邮箱配置获取 smtpClient.Credentials = new System.Net.NetworkCredential("testemail@qq.com", "******"); // 发出邮件的方法 smtpClient.DeliveryMethod = NMial.SmtpDeliveryMethod.Network; // 邮件消息实例 NMial.MailMessage messageContent = new NMial.MailMessage(); // 发送 smtpClient.Send(messageContent);}
using MailKit.Net.Smtp;using MailKit.Security;using MimeKit;using System;// MailKit.Net.Smtp 与 System.Net.Mail 有相同的类,所以使用定义别名using NetMial=System.Net.Mail;using System.Net.Mime;using System.Text;using static System.Console;namespace Fountain.WinConsole.SendMailDemo{ internal class Program { static void Main(string[] args) { try { // 使用了using 定义作用域 using (NetMial.SmtpClient smtpClient = new NetMial.SmtpClient()) // 如果未使用using定义别名入用,则需使用这种写法 //using (System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient()) { // 设置smtp的服务地址 smtpClient.Host = "smtp.qq.com"; //设置邮箱使用的端口,这里以QQ邮箱为例 smtpClient.Port = 587; // 是否使用SSL smtpClient.EnableSsl = true; // 设置是否使用默认凭据 smtpClient.UseDefaultCredentials = true; // userName-邮箱名称;password-根据服务提供商不同而定如QQ邮箱、163 都是使用授权码 // 授权码获取登录网页版的邮箱配置获取 smtpClient.Credentials = new System.Net.NetworkCredential("testemail@qq.com", "******"); // 发出邮件的方法 smtpClient.DeliveryMethod = NetMial.SmtpDeliveryMethod.Network; // 邮件消息实例 NetMial.MailMessage messageContent = new NetMial.MailMessage(); // 添加邮件接收地址,可以添加多个接收邮箱地址 messageContent.To.Add("testemail@163.com"); //设置发件人地址,发件人姓名,以及编码 messageContent.From = new NetMial.MailAddress("testemail@qq.com", "Test", Encoding.UTF8); messageContent.Subject = "test"; // 邮件标题编码 messageContent.SubjectEncoding = System.Text.Encoding.UTF8; // 邮件内容 messageContent.Body = "测试"; // 邮件内容的编码 messageContent.BodyEncoding = System.Text.Encoding.UTF8; // 设置邮件是否为HTML邮件 messageContent.IsBodyHtml = false; // 设置邮件优先级 messageContent.Priority = NetMial.MailPriority.Normal; // 发送 smtpClient.Send(messageContent); } // 由于使用了using static System.Console 可不用在静态成员前加Console, WriteLine("发送成功"); // 由于使用了using static System.Console 可不用在静态成员前加Console, ReadLine(); } catch (Exception exception) { // 由于使用了using static System.Console 可不用在静态成员前加Console, WriteLine(exception.Message); } } }}