您好,登錄后才能下訂單哦!
本篇內容介紹了“全文索引Pomelo.EFCore.MySql怎么創建”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
全文索引:MySQL全文檢索是利用查詢關鍵字和查詢列內容之間的相關度進行檢索,可以利用全文索引來提高匹配的速度。
Pomelo.EntityFrameworkCore.MySql:一款第三方MySQL的Entity Framework Core驅動,在GitHub中開源,性能、功能、下載量均超過Oracle官方提供的版本。QQ群522943763。
全文索引在7月28日被支持,需要安裝 Pomelo.EntityFrameworkCore.MySql 2.0.0-preview3-10049 或更高版本。
創建TestModel
類
class TestModel{
public Guid Id { get; set; }
public string Text { get; set; }
}
創建TestContext
類,并使用Fluent API為TestModel中的Text字段添加索引以及全文索引
class TestContext : DbContext{
public DbSet<TestModel> TestModels { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{ base.OnModelCreating(modelBuilder);
modelBuilder.Entity<TestModel>(e =>
{
e.HasIndex(x => x.Text).IsFullText(); // 添加全文索引
});
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{ base.OnConfiguring(optionsBuilder);
optionsBuilder.UseMySql("server=localhost;uid=root;pwd=123456;database=fttest");
}
}
即在欲添加全文索引的字段上使用.HasIndex().IsFullText()
。
接下來在Main方法中調用DbContext來測試:
class Program{
static void Main(string[] args)
{
var db = new TestContext();
db.Database.EnsureCreated();
Console.WriteLine("Hello World!");
}
}
在Navicat中我們可以看到,全文索引創建成功:
.IsFullText()
不可和.IsUnique()
同時使用。
InnoDB引擎的用戶使用本功能需要MySQL 5.6或更高版本
“全文索引Pomelo.EFCore.MySql怎么創建”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。