将验证应用于MVC中的模型,并希望使用Regex进行验证.
希望验证我的模型上的ID在提交时大于0.
我正在编写一个函数,它使用LINQ从DataBase中获取记录以获得IQueryable.此LINQ语句将在特定时间段内为活动用户提取所有记录,然后将UserID,First Name和Last Name吐出到Telerik RadGrid.
我的问题在于在拉动此数据时尝试在UserID上获得一个独特的值.我尝试重新编写此代码以获取结果.以下是拉动所有数据的代码示例,其中Distinct NOT工作.
public static IQueryable GetActiveEmployees_Grid(string Period)
{
DataContext Data = new DataContext();
var Employees = (from c in DataSystem_Records
where c.Period == Period
orderby c.DataSystem_Employees.LName
select c).Distinct();
return Employees;
}
Run Code Online (Sandbox Code Playgroud)
将DataSource应用到我的网格后,这将返回用户4次,该句点的每个记录一个实例.

有没有办法将Distinct应用于我的LINQ函数以使其按照我打算的方式工作?
我目前正在使用具有通用存储库和工作单元模式的实体框架.我的模型类似于本文中描述的模型
我过去曾使用Generic Repositories,并且非常享受它可以提供的全局功能.但是,在将它与Entity Framework一起使用时,似乎每天都会遇到更多问题.在处理父/子/交汇关系时,这些问题似乎更多.
使用带有EF的通用存储库开始在我的口中留下不好的味道,我开始认为使用带有EF的通用存储库是错误的方法.
有人可以帮助引导我朝正确的方向发展吗?
我在表格中有一个check-all复选框,用于检查表格列中的所有复选框:
<input class="check-all" type="checkbox" id="masterCheck" />
Run Code Online (Sandbox Code Playgroud)
但是,在我的一个页面上,我想自动检查页面加载时的check-all复选框.
要做到这一点,我试图触发一个触发器('click')函数,如下所示:
$(document).ready(function () {
if ($("#masterCheck").attr('checked')) {
} else {
$("#masterCheck").trigger('click');
}
});
Run Code Online (Sandbox Code Playgroud)
这样可以检查复选框是否合适,但是不会针对类.check-all(下面)的复选框触发我的自定义单击事件:
$(function () {
$('.check-all').click(function () {
$(this).parents('table:eq(0)').find(':checkbox').attr('checked', this.checked);
});
});
Run Code Online (Sandbox Code Playgroud)
我也尝试添加一个Javascript setTimeout,认为自定义点击功能尚未加载,但在等待1,2和3秒后仍然没有触发自定义点击功能.
在页面加载后,我可以取消选中我预先选中的复选框并重新检查它以完美地检查列中的所有复选框.
我是否必须在Document.ready上为我的jQuery添加一些特殊内容以允许它触发自定义单击事件?
***EDIT1:
好的,我试图在我的页面上的document.ready函数正上方添加自定义单击事件以确保它已加载(因为之前的自定义单击事件位于我的_Layout中使用的主.js文件中).除此之外,我已将我的复选框的类更改为与我的新自定义单击事件对应,因此我不会与我的主.js文件中的那个冲突.
<input class="check-allx" type="checkbox" id="masterCheck" />
// Check all checkboxes when the one in a table head is checked:
$(function () {
$('.check-allx').click(function () {
$(this).parents('table:eq(0)').find(':checkbox').attr('checked', this.checked);
alert(this);
});
});
// Check for unchecked masterCheck
$(document).ready(function () {
if ($("#masterCheck").attr('checked')) {
} …Run Code Online (Sandbox Code Playgroud) 我目前正在使用HttpResponse从我的服务器下载文件.我已经有几个函数用于下载Excel/Word文件,但我无法下载简单的文本文件(.txt).
使用文本文件,我基本上将TextBox的内容转储到文件中,尝试使用HttpResponse下载文件,然后删除临时文本文件.
以下是适用于Excel/Word文档的代码示例:
protected void linkInstructions_Click(object sender, EventArgs e)
{
String FileName = "BulkAdd_Instructions.doc";
String FilePath = Server.MapPath("~/TempFiles/BulkAdd_Instructions.doc");
System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;
response.ClearContent();
response.Clear();
response.ContentType = "application/x-unknown";
response.AddHeader("Content-Disposition", "attachment; filename=" + FileName + ";");
response.TransmitFile(FilePath);
response.Flush();
response.End();
}
Run Code Online (Sandbox Code Playgroud)
这里有一大堆代码不起作用.
请注意,代码运行时不会出现任何错误.文件已创建并已删除,但从未转储给用户.
protected void saveLog(object sender, EventArgs e)
{
string date = DateTime.Now.ToString("MM_dd_yyyy_hhmm"); // Get Date/Time
string fileName = "BulkLog_"+ date + ".txt"; // Stitch File Name + Date/Time
string logText = errorLog.Text; // Get Text from TextBox
string halfPath = "~/TempFiles/" …Run Code Online (Sandbox Code Playgroud) c# httpresponse text-files transmitfile response.transmitfile
我最近创建了一个应用程序,它通过CSV将项目添加到数据库.添加项目后,我意识到我的很多值都有额外的引号("),这是不需要的,这搞砸了我的订单.
问题是,当从Excel导出到CSV时,Excel会为我的所有已经包含引号的值添加额外的引号.我已经展示了以下差异:
原物品:电钻可逆1/2"6.3A
出口项目:"钻电可逆1/2""6.3"
注意:CSV导出添加了三(3)个额外引号(").两个末端,一个在原始预期引用之后.
我可以更改设置,还是可以在Excel文件/列上设置格式属性?或者我是否必须使用它并在将其添加到数据库之前删除后端代码中的这些引号?
我需要确定IQueryable方法是否返回Data,或者将其应用于RadGrid的DataSource时为"Empty",如下所示:
RadGrid.DataSource = Method(x);
if (Method(x) == yyy)
{
button.Enabled = true;
}
else
{
button.Enabled = false;
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用"null"代替"yyy"但没有成功.单步执行代码时,IQueryable方法返回"Empty",但我不确定如何使用If语句验证.
IQueryable方法返回的内容就像返回Empty一样,如何使用If语句验证?
我正在尝试将文件作为HttpPostedFileBase传递给我的Controller,因此我可以解析文件并将信息传递回页面.例如,我想允许用户导入vCard,并让它自动填充联系人创建表单PartialView.
我想通过传入文件,填充我的模型然后返回页面的PartialView来显示在页面上.我试过像下面的jQuery,但我永远不能让我的HttpPostedFileBase正确传递(总是为null).请记住,我需要在发布后访问文件的InputStream.
var file = "files=" + $("#fileInput").files[0];
$.post("/Contacts/UploadContact/", file, function (returnHtml) {
alert(returnHtml);
$("#contactContainer").html(returnHtml);
});
Run Code Online (Sandbox Code Playgroud)
是否可以通过jQuery将文件作为HttpPostedFileBase发布到我的Controller?
我对C#和编码很新.我正在寻找一个示例/开源定时器函数,用于在特定时间每周一次抛出基本方法(例如电子邮件通知).在做了一些研究后,我发现使用Timer而不是Windows服务是明智的,因为它的工作量非常小.
我在CodePlex和Code Project上找到了几个计时器API,但由于我对C#的了解很少,我在使用这些示例时遇到了麻烦.
有没有人知道我可以使用的简单计时器是初学者友好的,还有一个漫步?或者使用System.Timers有一种更简单的方法吗?
我的最终目标是拥有一个计时器,它将在每个星期一的上午8:00触发一个方法.
编辑:我相信我应该在我的初始帖子中更详细.我选择不使用Windows任务计划程序的原因是因为我调用的方法比调用Windows任务更复杂.
当计时器达到预定时间时,它将触发一个方法,该方法在数据库中查询在特定时间范围内需要服务的项目.然后,这将循环显示将其添加到电子邮件中的项目,该电子邮件将发送到该仓库的管理员.
如果我没有弄错,那么无法通过Windows任务计划程序完成?
我正在研究创建一个将使用HTML5的Web或iPad应用程序.经过一些研究,我发现HTML5有数据库缓存,并想知道缓存有多大?
我希望提供一个离线解决方案,这样用户仍然可以填写表格,如果他们在外地并且无法获得3G信号,则从数据库中提取信息.数据库缓存相当大(每个表有几千条记录的几个表),并且每周都会重新缓存.
HTML5可以缓存多少数据是否有限制?
c# ×6
jquery ×2
asp.net ×1
asp.net-mvc ×1
caching ×1
checkbox ×1
click ×1
csv ×1
distinct ×1
excel ×1
file-upload ×1
generics ×1
html5 ×1
httpresponse ×1
ipad ×1
iqueryable ×1
javascript ×1
linq ×1
model ×1
null ×1
regex ×1
text-files ×1
timer ×1
transmitfile ×1
triggers ×1
unit-of-work ×1