小编Sla*_*der的帖子

LINQ to Entity,使用SQL LIKE运算符

我有一个LINQ to ENTITY查询从表中提取,但我需要能够创建一个"模糊"类型的搜索.所以我需要添加一个where子句,按照姓氏搜索,如果他们在搜索框中添加条件(文本框,可以为空白---在这种情况下,它会拉动所有内容).

这是我到目前为止:

    var query = from mem in context.Member
                orderby mem.LastName, mem.FirstName
                select new
                {
                    FirstName = mem.FirstName,
                    LastName = mem.LastName,

                };
Run Code Online (Sandbox Code Playgroud)

这将把所有内容从Entity对象中的Member表中拉出来.

然后我对逻辑有了补充:

sLastName = formCollection["FuzzyLastName"].ToString();

if (!String.IsNullOrEmpty(sLastName))
   query = query.Where(ln => ln.LastName.Contains(sLastName));
Run Code Online (Sandbox Code Playgroud)

问题是当按下搜索按钮时,不返回任何内容(0结果).我已经运行了我期望在这里发生的SQL Server查询,它返回6个结果.

这是我期望的查询:

SELECT mem.LastName, mem.FirstName FROM Members mem WHERE mem.LastName LIKE '%xxx%'
Run Code Online (Sandbox Code Playgroud)

(当xxx输入文本框时)

有人看到这个有什么不对吗?

编辑:修复了SELECT查询.我的意思是它读取LIKE'%xxx%'(NOT ='xxx")

asp.net-mvc linq-to-entities entity-framework

12
推荐指数
1
解决办法
2万
查看次数

ASP.NET MVC过滤导致列表/网格

出于某种原因,我坚持这一点.我需要在同一视图中根据DropDownList过滤View中的结果.基本思路是:我有一个属于各种合作伙伴的提供商列表,但提供商列表包含所有提供商(适用于所有合作伙伴).当有人想要查看该合作伙伴时,我需要能够通过合作伙伴显示提供商(否则,默认列表将是所有提供商).我的观点目前是"默认"(显示全部),但出于某种原因,我坐在这里盯着显示器(过去2小时!)试图弄清楚如何过滤这些结果.

有什么建议从哪里开始/怎么做?!

asp.net-mvc

10
推荐指数
2
解决办法
2万
查看次数

LINQ to Entity,加入NOT IN表

我的大脑现在似乎很糊涂了!我正在使用LINQ to Entity,我需要从一个表中获取一些不存在于另一个表中的数据.

例如:我需要表A中的groupID,groupname和groupnumber,它们在表B中不存在.groupID将与其他相关信息一起存在于表B中.这些表没有任何关系.在SQL中它会非常简单(有一个更优雅和有效的解决方案,但我想画一幅我需要的图片)

SELECT
   GroupID,
   GroupName,
   GroupNumber,
FROM
   TableA
WHERE
   GroupID NOT IN (SELECT GroupID FROM TableB)
Run Code Online (Sandbox Code Playgroud)

使用Entity Framework/LINQ to Entity有一种简单/优雅的方法吗?现在我有一堆查询命中数据库,然后进行比较,等等.它非常混乱.

sql linq-to-entities

10
推荐指数
1
解决办法
9007
查看次数

试图从两个List <int>对象中获取不同的值

我有2个List对象:

List<int> lst1 = new List<int>();
List<int> lst2 = new List<int>();
Run Code Online (Sandbox Code Playgroud)

让我们说他们有价值观:

lst1.Add(1);
lst1.Add(2);
lst1.Add(3);
lst1.Add(4);

lst2.Add(1);
lst2.Add(4);
Run Code Online (Sandbox Code Playgroud)

我需要得到一个包含这两者的"不同"列表的对象; 所以在这种情况下,返回将是List {2,3}.

是否有捷径可寻?或者我是否需要遍历列表中的每个值并进行比较?

我愿意使用ObjectQuery,LINQ等,因为这些列表来自数据库,并且可能长达数百到数千个条目.

谢谢!

.net .net-3.5

8
推荐指数
2
解决办法
5887
查看次数

jQuery的$(form).submit()不仅针对IE进行解雇(MVC3应用程序)

我一直在搜索互联网(包括SO),我找不到任何可以帮助我解决问题的方法,所以希望我能得到你们的帮助.

基本上,就像标题所说,.submit()不会在IE中触发.所有其他浏览器工作正常,但在IE(目前为止,8,9,10)它只是不会触发提交.

这是视图代码:

        <form id="@formId" method="post" enctype="multipart/form-data" action="@Url.Content("/ActivityEvent/SubmitCheckpointApproval")">
            <table id="checkpoint-approval" style="width:100%" align="center" class="noBorders">
                <tr>
                    <td style="width: 520px;">
                        <div>
                            Please enter any relevant comments:
                        </div>
                        <div style="margin: 10px 0;">
                            <textarea class="wysiwygSimple" rows="4" cols="60" name="comment" id="checkpoint-comment-@(actTplId)"></textarea>
                        </div>
                    </td>
                    <td style="border: 0; padding-top: 30px; text-align: center; width:70px;">
                        <img alt="key" src="/Content/Images/checkmarkInCircle.png" align="middle" style="width: 100px;
                            height: 100px;" /><br />
                        <p style="text-align: left; margin-top: 10px;">
                            The notes and resources entered here are shared with the student.</p>
                    </td>
                </tr>
                <tr>
                    <td colspan="2" class="ResourcesUploadList">
                        Suggest some resources:<br /> …
Run Code Online (Sandbox Code Playgroud)

javascript forms internet-explorer submit asp.net-mvc-3

7
推荐指数
2
解决办法
3万
查看次数

MVC3和URL(使用区域,构建<a>标签时遇到问题)

我有一个区域问题,并从他们生成链接.这是我正在使用的代码的粗略结构:

Home
   Area1
     Area 1 Content
   Area2
     Area 2 Content
   Area3
     Area 3 Content

在我的_layout.cshtml文件中,我生成一个菜单(完全由表驱动):

foreach (MainMenu mm in parentMenus)
{
    List<SubMenu> theseChildren = childMenus.Where(o => o.MainMenuId == mm.MainMenuId).OrderBy(p => p.Ordering).ToList();

    result.Append(String.Format(@"<h3><a href='#'>{0}</a></h3>", mm.Name));
    result.Append(String.Format(@"<div>"));
    result.Append(String.Format(@"<p>"));
    foreach(SubMenu sm in theseChildren){

        //Issue is here:

        result.Append(String.Format(@"<a href='{0}/{1}/{2}'>{3}</a> <br />", sm.AreaName == null ? String.Empty : sm.AreaName, sm.ControllerName, sm.ActionName, sm.Name));
    }
    result.Append(String.Format(@"</p>"));
    result.Append(String.Format(@"</div>"));
}
Run Code Online (Sandbox Code Playgroud)

这是因为它是为手风琴(jQuery)生成的.

所以,问题出在foreach循环中.当代码在"Home"区域中运行时,它很好,但是当它在本地区域外运行时,它会产生奇怪的结果.

所以,例如,我在数据库中有一个记录OPS.它应该创建一个指向OPS/OPS/INDEX的链接(area = OPS,Controller = OPS,Action = INDEX).在家庭"区域",它很好,但当它在一个区域,它出来"http:// localhost:17416/Home/OPS/OPS/INDEX"

任何可以提供的帮助都会很棒!

在此先感谢大家.

c# asp.net-mvc-3

4
推荐指数
2
解决办法
6115
查看次数

将jQuery Datepicker添加到动态添加的<input>

我有一个方法,在我的控制器中创建一个表单:

...
sbReturn.Append(String.Format("<p id='planSetupAddNewEffectiveDate'>"));
sbReturn.Append(String.Format("<label for='txtPlanSetupAddNewEffectiveDate'>Effective Date </label>"));
sbReturn.Append(String.Format("<input type='text' id='txtPlanSetupAddNewEffectiveDate' class='plansetupdate' />"));
sbReturn.Append(String.Format("</p>"));
...
Run Code Online (Sandbox Code Playgroud)

有没有办法将datepicker附加到该文本字段?

我试过这个标准

$(".plansetupdate").datepicker();
Run Code Online (Sandbox Code Playgroud)

$("#txtPlanSetupAddNewEffectiveDate").datepicker();
Run Code Online (Sandbox Code Playgroud)

但实际上都没有生成日期选择器.我知道当从错误添加的控件(即按钮)中捕获事件时使用.live(即.xxx.live('click',function()...),这种情况是否有类似的东西?

jquery asp.net-mvc-2

3
推荐指数
1
解决办法
2021
查看次数

LINQ(实体)的问题[添加记录]

我在一个项目中使用LINQ to Entity,在那里我从数据库中提取一堆数据并将其组织成一堆对象并将它们保存到数据库中.在使用LINQ to Entity之前,我没有遇到过写入db的问题,但是我遇到了这个特殊问题.这是我得到的错误(这是"InnerException",异常本身是无用的!):

不允许新事务,因为会话中正在运行其他线程.

之前,当我试图在循环中保存我的更改时,我已经看到过.在这种情况下,循环结束,它尝试进行该调用,只是为了给我一个例外.这是当前的代码:

try
{
    //finalResult is a list of the keys to match on for the records being pulled
    foreach (int i in finalResult)
    {
         var queryEff = (from eff in dbMRI.MemberEligibility
                         where eff.Member_Key == i && eff.EffDate >= DateTime.Now
                         select eff.EffDate).Min();

         if (queryEff != null)
         {
             //Add a record to the Process table
             Process prRecord = new Process();
             prRecord.GroupData = qa;
             prRecord.Member_Key = i;
             prRecord.ProcessDate = DateTime.Now;
             prRecord.RecordType = "F";
             prRecord.UsernameMarkedBy = "Autocard";
             prRecord.GroupsId …
Run Code Online (Sandbox Code Playgroud)

.net entity-framework .net-3.5

2
推荐指数
1
解决办法
3400
查看次数

从ASP.NET MVC调用应用程序

我试图看看是否可以从ASP.NET MVC应用程序调用外部(控制台)应用程序.它们都将在内部服务器上构建和部署,并且都将使用自定义形式的安全性,在执行任何操作之前验证用户VIA AD,因此我不会过分担心安全风险.基本上,我试图为应用程序构建一个基于Web的前端,以便它可以在任何地方启动.基于Web的前端基本上将收集所有参数并在运行时将它们传递给应用程序.

有什么想法吗?

asp.net-mvc console-application

1
推荐指数
1
解决办法
1802
查看次数