.net core项目搭建swagger接口实现简单增删改查
.net core搭建swagger
1,新建立.net core項目(這里不再細(xì)說)
2,引入NuGet程序包
3,建立項目之后在Startup類中配置swagger
這里我直接把代碼貼出來:
在ConfigureServices中添加如下代碼:
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo { Title = "API 接口", Version = "v1" });
var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
c.IncludeXmlComments(xmlPath,true);
});
在Configure中添加如下代碼:
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});
4,配置數(shù)據(jù)庫連接:我這里使用得SQLite數(shù)據(jù)庫
在ConfigureServices中添加如下代碼:(建立數(shù)據(jù)連接)
Action<DbContextOptionsBuilder> dbOptions = options =>
{
options.UseSqlite(Configuration.GetConnectionString("Sqlite"),
sqliteOptions => { sqliteOptions.CommandTimeout(90); });
};
在appsettings.json文件中建立一個絕對路徑,指向數(shù)據(jù)庫文件(如用其他數(shù)據(jù),則建立對應(yīng)連接字符串即可,在configureServices中建立對應(yīng)數(shù)據(jù)庫連接方式)
此處我再給出一個連接mysql數(shù)據(jù)庫得例子:
在appsettings.json文件中配置連接字符串
"ConnectionStrings": {
"MySql": "server=端口好;userid=用戶名;password=數(shù)據(jù)庫密碼;database=數(shù)據(jù)庫名"
}
5,建立實體類,遷移更新數(shù)據(jù)庫添加表,遷移命令,更新命令這里不再提供查詢百度即可
6,建立派生類繼承DbContext用于增刪改查( DbContext通常將與包含模型的根實體的DbSet<TEntity>屬性的派生類型一起使用)
7,搭建webapi接口實現(xiàn)增刪改查(這里我直接貼源碼)
/// <summary>
/// 測試api
/// </summary>
[Route("api/[controller]")]
[ApiController]
public class TestController : ControllerBase
{
private readonly SqlContext _context;
/// <summary>
/// 構(gòu)造函數(shù)
/// </summary>
/// <param name="sqlContext"></param>
public TestController(SqlContext sqlContext)
{
_context = sqlContext;
}
/// <summary>
/// 添加用戶
/// </summary>
/// <returns></returns>
[HttpPost("Add")]
public int AddUser(User user)
{
_context.Users.Add(user);
var data = _context.SaveChanges();
return data;
}
/// <summary>
/// 查詢所有用戶
/// </summary>
/// <returns></returns>
[HttpPost("GetAllUser")]
public List<User> GetAllUsers()
{
return _context.Users.ToList();
}
/// <summary>
/// 刪除用戶
/// </summary>
/// <returns></returns>
[HttpPost("Delete")]
public void Delete(string name)
{
User user = _context.Users.Where(x => x.Name == name).FirstOrDefault();
_context.Users.Remove(user);
_context.SaveChanges();
}
/// <summary>
/// 通過姓名查找用戶
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
[HttpPost("SelectByName")]
public User GetUser(string name)
{
User user = _context.Users.Where(x => x.Name == name).FirstOrDefault();
return user;
}
}
8,測試接口,運行項目訪問https://端口/swagger/index.html
總結(jié)
以上是生活随笔為你收集整理的.net core项目搭建swagger接口实现简单增删改查的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux 概念:grub2
- 下一篇: Touchpal实习技术栈和总结