我在将telerik RadGrid和普通的ASP.NET GridView绑定到以下LINQ to实体查询的结果时遇到问题.在这两种情况下,网格都包含正确的行数,但只有少数几行的数据在所有其他行中都是重复的.我直接从此代码中为网格上的DataSource属性分配返回值.
public IEnumerable<DirectoryPersonEntry> FindPersons(string searchTerm)
{
DirectoryEntities dents = new DirectoryEntities();
return from dp in dents.DirectoryPersonEntrySet
where dp.LastName.StartsWith(searchTerm) || dp.Extension.StartsWith(searchTerm)
orderby dp.LastName, dp.Extension
select dp;
}
Run Code Online (Sandbox Code Playgroud)
ADDED:这是可行的替代普通ADO.NET代码:
DataTable ret = new DataTable();
using (SqlConnection sqn = new SqlConnection(ConfigurationManager.ConnectionStrings["WaveAdo"].ConnectionString))
{
SqlDataAdapter adap = new SqlDataAdapter("select * from DirectoryPersonList where LastName like '" + searchTerm + "%' order by LastName ", sqn);
sqn.Open();
adap.Fill(ret);
}
return ret;
Run Code Online (Sandbox Code Playgroud)
更多:
更新:基于下面Marc …
我有一个小的Ajax应用程序,我使用Razor视图来初始生成HTML表单段,我稍后使用knockout.js读取和写入.虽然我没有执行非Ajax操作请求,但我使用Razor生成HTML,因此我喜欢自动生成jQuery Validation属性.例如,在我的单个页面中,我渲染一个隐藏的表单,如下所示:
<section id="person-detail">
@Html.Action("EditPartial", "Person")
</section>
Run Code Online (Sandbox Code Playgroud)
该EditPartial操作返回一个看起来很像这样的局部视图:
@using (Html.BeginForm())
{
<fieldset>
@Html.HiddenFor(model => model.Id, new { data_bind = "value: id" })
<div class="editor-label">
@Html.LabelFor(model => model.FirstName)
</div>
<div class="editor-field">
@Html.TextBoxFor(model => model.FirstName, new { data_bind = "value: firstName" })
@Html.ValidationMessageFor(model => model.FirstName)
</div>
<p>
<a href="#" data-bind="click: save">Update</a>
<a href="#" data-bind="click: delete">Delete</a>
</p>
</fieldset>
}
Run Code Online (Sandbox Code Playgroud)
因为我实际上从未发布过表单,并且由于一些未知数,尽管我的Person模型上的所有属性都标有Required属性,但我看不到客户端验证的迹象.单击我的保存按钮时,我该怎么做才能触发此验证?
这与Property(() => p).HasDatabaseGeneratedOption()呼叫一起使用.或许是关闭默认的DB值生成?
entity-framework entity-framework-mapping entity-framework-5
我是Android上的一个完整的菜鸟,只是在按钮激活的基本(1或2行)活动的水平上,但我想创建一个非常简单的应用程序,当我点击应用程序图标时,它会触发并忘记消息到我的Windows 8 PC上的监听服务器.手机通过USB线连接为简单的媒体设备,无需Kies.
我可以得到一个消息框,并说消息已发送.我需要知道要使用哪种通信通道,例如COM端口或什么,以及如何通过Android发送数据.在Windows方面,一旦我建立了沟通方式,我就能帮助自己.
我刚刚按照本文中的说明操作中的说明将Google添加为我的MVC 5应用程序的登录提供程序.一切似乎都运行正常,但当我通过谷歌登录时,它希望我在我的应用程序中注册Google提供的电子邮件/用户名作为新帐户.如果我按原样保留电子邮件并单击"注册"按钮,它会告诉我该地址已被占用,因为我之前已在我的应用程序自己的登录提供程序上注册.
如何调整MVC项目模板生成的默认代码以允许我将Google登录与现有本地帐户相关联?
PS我和Facebook有完全相同的问题.
MSDN说这个方法"添加一个执行SQL资源文件的操作".它的签名是:
protected internal void SqlResource(
string sqlResource,
Assembly resourceAssembly = null,
bool suppressTransaction = false,
object anonymousArguments = null
)
Run Code Online (Sandbox Code Playgroud)
并且该sqlResource参数被描述为The manifest resource name of the SQL resource file to be executed."SQL资源文件"与普通.resx资源文件相同,如果是,它可以包含许多文件,那么如何指定资源文件的名称以及该资源中的文件,在这一个参数?或者是"SQL资源文件"是一种不同类型的文件,只包含一个SQL脚本,我只是为sqlResource参数传递该文件的名称?
c# sql-server entity-framework ef-migrations entity-framework-6
我是一个非常新的文件传输HttpClient和Web API,所以请原谅我的代码中的任何无知和猜测.我一直试图将创建的文件发布System.IO.Compression.ZipFile到我的Web API大约一天,并且总是得到404响应.如果我使用空流发布,则会调用API操作方法,因此我知道404是由于内容而不是URI.
此方法位于尝试发布文件的客户端WPF应用程序中:
public async Task PostDirAsync(string localDirPath, string serverDir)
{
var sourcePath = Path.Combine("Temp", Guid.NewGuid() + ".zip");
ZipFile.CreateFromDirectory(localDirPath, sourcePath, CompressionLevel.Fastest, true);
StreamContent streamContent;
using (var fs = File.Open(sourcePath, FileMode.Open))
{
var outStream = new MemoryStream();
await fs.CopyToAsync(outStream);
outStream.Position = 0;
streamContent = new StreamContent(outStream);
}
streamContent.Headers.Add("Content-Type", "application/octet-stream");
var resp = await _client.PostAsync("api/File/PostDir?serverPath={WebUtility.UrlEncode(serverDir)}", streamContent);
}
Run Code Online (Sandbox Code Playgroud)
这是接收帖子的Web API中的操作方法,但前提是我outStream.Position = 0;在尝试发布之前不执行此操作:
[HttpPost("PostDir")]
[DisableRequestSizeLimit]
public async Task<IActionResult> PostDir(string serverPath)
{
var zipName = Path.Combine(_config["QuickDrive:TempDir"], Guid.NewGuid() + …Run Code Online (Sandbox Code Playgroud) c# dotnet-httpclient kestrel-http-server asp.net-core asp.net-core-2.0
我有一个VPN连接,我一直在丢失,我需要连接到我们的数据库服务器,但每个第二或第三个连接都失败,因为我丢失了VPN连接.在继续尝试数据库连接之前,我想添加somde代码 - 仅用于DEBUG配置 - 检查VPN连接并在必要时重新连接.
我还找不到很多适当的Core 1教程,但是当我谷歌的方法名称时,我得到了无数的例子,说明要包含在Startup.cs:
app.UseDefaultFiles();
app.UseStaticFiles();
Run Code Online (Sandbox Code Playgroud)
然而,我得到编译错误,这两种方法都不存在app,这是类型IApplicationBuilder.这些呼叫不再需要,或者命名完全不同,还是设置在其他地方?
我正在编写一个小应用程序,它可以读取必须定期从设备外部源写入存储设备的文件,无论是USB,蓝牙,Airdroid等.从我读过的,没有什么可以写到内部存储器.我想管理内部存储中的文件以获取访问隐私.
我的第一个解决方案是允许用户将文件写入外部存储器,然后点击按钮将其传输到内部存储器的活动.如果在n分钟内没有发生这种情况,则会破坏外部存储上的文件.但是,我发现这getExternalStorageDirectory是非常无用的,因为设备模仿内部存储上的外部存储,Android无法知道是否以及如何完成.
然而,我想知道是否没有某种内置活动允许用户直接从内部存储上传或下载文件,但不能免费访问内部存储的整个文件结构,就像他们使用内部存储一样.
作为最后的手段,也许我的应用程序可以通过TCP连接接收文件并将其写入内部存储本身.它很乱,但试图找到一张SD卡也是如此.请参阅问题查找外部SD卡位置.
新功能:此练习的目的是查找SD卡上目录中的所有.csv文件,让用户选择一个,处理它,并将输出文件写入SD卡.用户将输入"权重"值,该值将用于处理文件的计算中.
但是,由于Android在提供真正外部存储(即SD卡)的位置方面是如此不可靠,我想尝试将文件存储在内部存储中,其中Android似乎对该存储的位置更加诚实和可靠.
c# ×4
.net ×2
android ×2
asp.net ×2
asp.net-core ×2
asp.net-mvc ×2
android-file ×1
asp.net5 ×1
facebook ×1
knockout.js ×1
linq ×1
oauth ×1
sql-server ×1
usb ×1
vpn ×1
windows-7 ×1