【发布时间】:2020-04-30 00:11:52
【问题描述】:
我在配置中存储了多个值,现在我想将这些值与来自数据库的值进行比较。有一种方法由字典组成,我想获取要检查的属性。哪个是帐号?
如何归档字典以获取密钥并使用它来检查值是否存在?
public FinancialDocument(FinancialDocumentMetadata metaData, Uri url)
{
MetaData = metaData;
DocumentUrl = url;
}
**Model**
public class FinancialDocumentMetadata
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
public string AccountNumber { get; set; }
--
--
--
}
这是配置值
<add key="AccountNumbers" value="A,B,C,D,E,F"/>
从配置中获取帐户存储
string[] accountArray = System.Configuration.ConfigurationManager.AppSettings["AccountNumbers"].Split(',').Select(s => s.Trim()).ToArray();
List<string> accountlist = new List<string>(accountArray);
这是获取文件字典的方法。我想从 FinancialDocument 中检查一个属性(AccountNumber)以进行检查
private void Generate(Document targetDocument, Dictionary<FinancialDocument, PdfDocument> files)
{
//Want to check against the accounts numbers, if exists.
if (accountlist.Contains("files.xxx.accountnumber"))//Not sure how i can filter the AccountNumber field to check against.
{
--
}
}
【问题讨论】:
-
不确定您到底想做什么。你可以使用 linq 看看这里stackoverflow.com/questions/2131648/…。你的问题到底出在哪里?不清楚你想用字典做什么
-
我想要来自 AccountNumber 的支票值。配置值将有几个我想检查的帐户,AccountNumber 得到了所有值。我 accountNumber 'A' 存在,我会继续我的逻辑
-
好的,你通过了
<FinancialDocument, PdfDocument>-><TKey,TValue>的字典。 AccountNumber在哪个对象中,如何从FinancialDocument到FinancialDocumentMetadata?请更新您的问题并向我们提供您的模型和最终结果的完整详细信息。 -
我猜应该是这样的 Key.MetaData.AccountNumber
-
@JuniorLinq:是的,对不起,我的答案中忘记了
.MetaData,现在包括在内。
标签: c# dictionary filter