ZhouliProject/ZhouliGenerateCode/CreateCode.cs
(开头部分) 8KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using Zhouli.Common.Expansion;
namespace ZhouliGenerateCode
{
public class CreateCode
{
private static List<string> listBLLClass;
private static List<string> listDALClass;
private static string strPathDAL = $"{AppContext.BaseDirectory}../../../../Zhouli.DAL/";
private static string strPathBLL = $"{AppContext.BaseDirectory}../../../../Zhouli.BLL/";
/// <summary>
/// 首次读取BLL,DAL下已经生成的类
/// </summary>
static CreateCode()
{
DirectoryInfo directoryInfoDAL = new DirectoryInfo($"{strPathDAL}Interface");
listDALClass = directoryInfoDAL.GetFiles().Select(t => t.Name).ToList();
DirectoryInfo directoryInfoBLL = new DirectoryInfo($"{strPathBLL}Interface");
listBLLClass = directoryInfoBLL.GetFiles().Select(t => t.Name).ToList();
}
/// <summary>
/// 创建BLL层代码
/// </summary>
/// <param name="ModelName"></param>
public void CreateBLL(string ModelName)
{
if (!(listBLLClass.Count(t => t.Contains(ModelName)) > 0))
{
#region 生成Interface
StringBuilder strBLLInterface = new StringBuilder();
using (FileStream fileStream = new FileStream($"{strPathBLL}Interface/I{ModelName}BLL.cs", FileMode.CreateNew, FileAccess.Write))
{
strBLLInterface.AppendLine("using System;");
strBLLInterface.AppendLine("using System.Collections.Generic;");
strBLLInterface.AppendLine("using System.Text;");
strBLLInterface.AppendLine("using Zhouli.DbEntity.Models;");
strBLLInterface.AppendLine("");
strBLLInterface.AppendLine("namespace Zhouli.BLL.Interface");
strBLLInterface.AppendLine("{");
strBLLInterface.AppendLine($" public interface I{ModelName}BLL : IBaseBLL<{ModelName}>");
strBLLInterface.AppendLine(" {}");
strBLLInterface.AppendLine("}");
byte[] buffer = Encoding.Default.GetBytes(strBLLInterface.ToString());
fileStream.Write(buffer, 0, buffer.Length);
Console.WriteLine($"I{ModelName}BLL.cs 生成成功!");
}
#endregion
#region 生成Implements
StringBuilder strBLLImplements = new StringBuilder();
using (FileStream fileStream = new FileStream($"{strPathBLL}Implements/{ModelName}BLL.cs", FileMode.Create, FileAccess.Write))
{
string strModelNameFirstCharLower = ModelName.FirstCharToLower();
strBLLImplements.AppendLine("using System;");
strBLLImplements.AppendLine("using System.Collections.Generic;");
strBLLImplements.AppendLine("using System.Text;");
后面还有 83 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。