我有一个数据库,我可以将其转换为JSON文件,这对我来说非常好看。
现在,假设我想仅获取特定类型的信息。例如,ID
,Category
和Targets
。如何在忽略其余类型的同时从这些类型中获取信息?这可能吗?如果可能的话,我应该使用什么工具来完成这项工作?我目前有JSON.Net,那个适合吗?如果是这样,我如何在不修改JSON文件的情况下从较大的集合中获取所述数据?
答案 0 :(得分:5)
是的,使用JSON.Net这样做是微不足道的。只需创建一个只有这三个属性的类,然后使用该类反序列化JSON。对于完整集,创建另一个具有所有属性的类,并使用该类反序列化JSON。
但是,我们通常使用完整的属性集将JSON反序列化为一个类,并使用我们需要的内容。
答案 1 :(得分:0)
如果您尝试将此信息传递给模型,您可以直接使用存储过程,然后在C#项目中使用这种新模型来创建您希望接收的数据的新模型。
存储过程示例
USE Database;
GO
IF OBJECT_ID('sp_selectTable', 'P') IS NOT NULL
DROP PROCEDURE sp_selectTable;
GO
CREATE PROCEDURE sp_selectTable
AS
SET NOCOUNT ON;
SELECT Column1, Column1,Column3
FROM Table
RETURN
GO
模型示例
public class Model
{
public int Column1 { get; set; }
public int Column2 { get; set; }
public int Column3 { get; set; }
}
然后调用存储过程
var result=dbContext.Database.SqlQuery<List<Model>>(sqlQuery).SingleOrDefault();