RavenDB 转换 - 尝试创建对象列表时抛出异常
RavenDB Transformation - Exception thrown when trying to create a list of object
我正在尝试 运行 RavenDB 转换以将我的文档映射到视图模型,但我 运行 遇到了这个错误:
Error CS1503 - Argument 1: cannot convert from 'AnonymousType#1'
我不确定为什么不能在这里初始化新的 OfferRate 列表。如何正确地将我的文档模型映射到视图模型?
Offer_ViewModel.cs
public class Offer_ViewModel : AbstractTransformerCreationTask<Offer>
{
public Offer_ViewModel()
{
TransformResults = offers => offers
.Select(offer => new ViewModels.Offer
{
Id = offer.Id,
MerchantId = offer.MerchantId,
Title = offer.Title,
OfferRates = new List<OfferRate>
{
new OfferRate
{
Type = OfferRateType.Base,
Amount = offer.Amount,
Percentage = offer.Percentage
}
},
Currency = offer.Currency
});
}
}
我正在按照此处使用变换器映射到视图模型的指南进行操作:https://ravendb.net/articles/working-with-view-models 但该示例不包括映射聚合对象。
根据上面的评论,将集合更改为数组是可行的。
Offer_ViewModel.cs
public class Offer_ViewModel : AbstractTransformerCreationTask<Offer>
{
public Offer_ViewModel()
{
TransformResults = offers => offers
.Select(offer => new ViewModels.Offer
{
Id = offer.Id,
MerchantId = offer.MerchantId,
Title = offer.Title,
OfferRates = new[]
{
new OfferRate
{
Type = OfferRateType.Base,
Amount = offer.Amount,
Percentage = offer.Percentage
}
},
Currency = offer.Currency
});
}
}
我正在尝试 运行 RavenDB 转换以将我的文档映射到视图模型,但我 运行 遇到了这个错误:
Error CS1503 - Argument 1: cannot convert from 'AnonymousType#1'
我不确定为什么不能在这里初始化新的 OfferRate 列表。如何正确地将我的文档模型映射到视图模型?
Offer_ViewModel.cs
public class Offer_ViewModel : AbstractTransformerCreationTask<Offer>
{
public Offer_ViewModel()
{
TransformResults = offers => offers
.Select(offer => new ViewModels.Offer
{
Id = offer.Id,
MerchantId = offer.MerchantId,
Title = offer.Title,
OfferRates = new List<OfferRate>
{
new OfferRate
{
Type = OfferRateType.Base,
Amount = offer.Amount,
Percentage = offer.Percentage
}
},
Currency = offer.Currency
});
}
}
我正在按照此处使用变换器映射到视图模型的指南进行操作:https://ravendb.net/articles/working-with-view-models 但该示例不包括映射聚合对象。
根据上面的评论,将集合更改为数组是可行的。
Offer_ViewModel.cs
public class Offer_ViewModel : AbstractTransformerCreationTask<Offer>
{
public Offer_ViewModel()
{
TransformResults = offers => offers
.Select(offer => new ViewModels.Offer
{
Id = offer.Id,
MerchantId = offer.MerchantId,
Title = offer.Title,
OfferRates = new[]
{
new OfferRate
{
Type = OfferRateType.Base,
Amount = offer.Amount,
Percentage = offer.Percentage
}
},
Currency = offer.Currency
});
}
}