如何使用linq将文本框项插入数据库

时间:2017-08-26 11:07:18

标签: c# linq

我的输入框接受一串文字,例如" abc,bcd"。我想要做的是将文本字符串分成单独的文本abc和bcd使用逗号作为分隔符,然后使用linq将其插入到db中,每个单独的文本都是DB中的条目。
但是,我无法通过以下代码实现它。 我正在获得@php $currentdate=strtotime(date('Y/m/d')); $exp_date=strtotime($expiry_date); if($currentdate > $exp_date) { //not expired $color="#539E05"; } else { //expired $color="#EA2C12"; } @endphp <td style="color: {{$color}}">{{$expiry_date}}</td> 。令我沮丧的很多。任何人都可以在这里向我解释。

isAdded=false

1 个答案:

答案 0 :(得分:0)

扩展方法Select返回惰性执行类型的IEnumerable<T>实例。

您提供的lambdas的实际执行只有在您使用foreachToList()或其他方法进行枚举时才会执行

var sourceSystems = 
    this.TxtCreateAgencySourceSystem
        .Text
        .Split(',')
        .Select(source => source.Trim())
        .Where(source => string.IsNullOrWhiteSpace(source) == false)
        .Select(source => new Governance
        {
            AgencyCode = $"{AgencyCode}_{source},
            GovernanceCode = ${AgencyCode}_{source}_{Constants.GOVERNANCE_ROLE_DATA_OWNER_VALUE}",
            RoleCode = Constants.GOVERNANCE_ROLE_DATA_OWNER_VALUE,
            CreatedBy = EDHSession.Current.User.EmailAddress,
            CreatedDate = dateTimeNow
        })
        .Select(governance => new
        {
            Governance = governance,
            IsAdded = userServiceProxy.CreateGovernance(governance)
        })
        .ToList() // here all Selects and Wheres methods will be executed actually



var addedSystems = sourceSystems.Where(system => system.IsAdded)
                                .Select(system => system.Covernance)
                                .ToArray();