我正在使用不重复使用MVC的ASP.NET网站进行URL重写.该网站工作正常,直到今天我才开始收到2个错误.根据FireBug,这两个错误都在WebResource.axd的第3行.这是文件中的第一行代码,行只有这个:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个问题?这对我来说没什么意义.
另外,我正在使用RouteCollection和IRouteHandler.我曾经指导过的网站是http://www.4guysfromrolla.com/articles/051309-1.aspx.我做的唯一真正的改变是我在我的页面中添加了2个链接,我没有创建路由,但我从未点击过这些链接.
我已经修复了我的2个链接,页面工作正常大约一个小时,然后它开始再次抛出错误,这次似乎没有押韵或理由.我最大的问题是它没有任何意义.第一行的语法错误似乎是一个奇怪的错误.
我正在开发一个使用 URL 路由的基于 .NET 3.5 Web 窗体的网站。到目前为止,我已经创建了几条路线,我没有遇到任何问题。我现在有一个 .ashx 文件,当有人单击链接时,该文件将处理将 .pdf 文件从 SQL Server 中的表发送到网站。通常,当我创建一个处理程序时,它看起来像这样:
return BuildManager.CreateInstanceFromVirtualPath("~/ViewItem.aspx", typeof(Page)) as Page;
Run Code Online (Sandbox Code Playgroud)
对于我的 .ashx 文件,我尝试过:
return BuildManager.CreateInstanceFromVirtualPath("~/FileServer.ashx", typeof(Page)) as Page;
Run Code Online (Sandbox Code Playgroud)
但这不起作用,因为 fileserver.ashx 不是页面,因此将其转换为 typeof(Page)) 因为 Page 将失败。我如何将 VirtualPath 转换为而不是 Page 或者我应该以其他方式执行此操作。
我的数据库中有很多关系.两个结束表是BlogPost和Item,中间的表是ItemBlogPost.我需要找回与特定项目相关的所有BlogPost.在SQL中,我会这样做:
SELECT BlogPost.*
FROM BlogPost
JOIN ItemBlogPost ON BlogPost.ID = ItemBlogPost.BlogPost_ID
WHERE ItemBlogPost.Item_ID = @Item_ID
Run Code Online (Sandbox Code Playgroud)
在C#中我有类似的东西:
IQueryable<BlogPost> itemBlogPosts = from b in connection.BlogPosts
where b.Items == item.ID
orderby b.Content.CreateDate descending
select b;
Run Code Online (Sandbox Code Playgroud)
但是,标记为b.Items的行没有给出Item属性的列表,并且没有b.ItemBlogPost来查看中间表.我也尝试过,b.Items.Contains(item)但也失败了.如何在LINQ to EF4中完成这项工作?
我有一个带有以下代码的 boostrap 切换。它在视觉上工作正常
<div class="btn-group" data-toggle="buttons">
<label class="btn btn-primary active">
<input type="radio" name="options" id="showBuildQuantity" autocomplete="off" checked>Build Quantity
</label>
<label class="btn btn-primary">
<input type="radio" name="options" id="showNumberOfScreens" autocomplete="off" onclick="showBuildQuantity()">Number of Screens
</label>
</div>
Run Code Online (Sandbox Code Playgroud)
在它下面我有一些代码来处理点击事件:
$(document).ready(function () {
$('#showBuildQuantity').on('click', function () {
<code here>
});
$('#showNumberOfScreens').on('click', function () {
<code here>
});
});
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是当我单击切换按钮时,单击事件永远不会运行。
我在同一页面上有其他按钮使用相同类型的 jQuery 单击事件,它们没有问题。
我正在尝试创建一个API,该API中的一个函数将Enum作为参数,然后对应于使用的字符串.
public enum PackageUnitOfMeasurement
{
LBS,
KGS,
};
Run Code Online (Sandbox Code Playgroud)
对此进行编码的简单方法必须列出代码中的每个案例.但是因为他们是30个案例,所以我试图避免这种情况并使用Dictionary Data Structure,但我似乎无法联系点如何将价值与枚举联系起来.
if(unit == PackageUnitOfMeasurement.LBS)
uom.Code = "02"; //Please note this value has to be string
else if (unit == PackageUnitOfMeasurement.KGS)
uom.Code = "03";
Run Code Online (Sandbox Code Playgroud) 在下面的代码中,test.txt在运行之前就存在了,而test2.txt却没有.在将文件复制到destFile的位置后运行destFile.Exists时返回null.是什么造成的?我在msdn中找不到支持正在发生的事情的任何信息.
var origFile = new FileInfo(@"C:\Users\user\Desktop\CopyTest\test.txt");
var destFile = new FileInfo(@"C:\Users\user\Desktop\CopyTest\test2.txt");
if (!destFile.Exists && origFile.Exists)
origFile.CopyTo(destFile.FullName);
if (destFile.Exists)
Console.WriteLine("The file was found");
Console.ReadLine();
Run Code Online (Sandbox Code Playgroud) 我目前正在使用v4.6.2开发一个C#项目,Visual Studio刚刚建议对下面的代码进行代码更改.
我的问题是,我从未见过is用于以这种方式创建新变量实例的关键字.
原始代码是:
var authInfo = inputs.FirstOrDefault(i =>
typeof(SoapAuthenticationBase).IsAssignableFrom(i.GetType()));
if (authInfo is SoapAuthenticationBase)
Run Code Online (Sandbox Code Playgroud)
Visual Studio 2017建议:
if (inputs.FirstOrDefault(i =>
typeof(SoapAuthBase).IsAssignableFrom(i.GetType()))
is SoapAuthBase authenticationContract)
Run Code Online (Sandbox Code Playgroud)
我在'is'关键字上检查了Microsoft的文档,但没有发现任何解释这种语法的内容.
以这种方式添加了什么版本的C#?
我有一堆PDF文档,我需要在我正在制作的网站中使用.我也需要能够搜索PDF.那么将这些文件保存到数据库还是文件夹更好?此外,在这两种情况下,我如何搜索它们?我将基本上搜索他们1或2个单词并返回包含结果的PDF列表.做这一切的最好和最简单的方法是什么?此外,PDF文件每年最多更换一次,有时甚至更少,我不需要保留修订历史记录.
我正在尝试运行此代码:
ItemTaxonomy iTaxonomy = from itemTaxonomy in connection.ItemTaxonomy
where itemTaxonomy.Item.ID == itemView.ID
orderby itemTaxonomy.Taxonomy.Name
select itemTaxonomy;
Run Code Online (Sandbox Code Playgroud)
当我编译它时,我收到错误:
无法隐式转换
'System.Linq.IOrderedQueryable<Website.Models.ItemTaxonomy>'为'Website.Models.ItemTaxonomy'.存在显式转换(您是否错过了演员?)
我相信问题在于,orderby itemTaxonomy.Taxonomy.Name但我只是试图通过Taxonomy项目的名称而不是他们的ID来命令.有没有办法做到这一点?
我有这个代码
String coNum = customerOrderLine.coNum.PadLeft(10 - customerOrderLine.coNum.Length);
Run Code Online (Sandbox Code Playgroud)
我知道customerOrderLine.coNum = "123456" 所以我应该最终得到coNum在它前面有4个空格但我最终得到的是"123456".我该如何解决?我试过PadRight,如果这是错误,它也无法工作.我必须在开头有4个空格,将它传递给我正在处理的API,否则它将失败.
我有一个类型的对象IEnumerable<IEnumerable<int>>.我需要对内部的内部进行排序,IEnumerable<int>但我不知道该怎么做.
我尝试转换IEnumerable<IEnumerable<int>>为List<List<int>>使用此代码使排序更容易:
var sortedResults = results.ForEach(x => x.ToList());
Run Code Online (Sandbox Code Playgroud)
但是我收到错误"无法将void分配给隐式类型变量"
如果我同时进行排序和转换,我也会收到同样的错误:
var sortedResults = results.ToList().ForEach(x => x.ToList().Sort((a ,b) => a.CompareTo(b))));
Run Code Online (Sandbox Code Playgroud)
做这个的最好方式是什么?
我有一个有3个变量的页面.它们看起来像这样:
String[] Headers = new String[] { "Max Width", "Max Length", "Max Height" };
String currentHeader = (String)HttpContext.Current.Request.QueryString["ItemHas"] ?? "";
String checkString = (String)HttpContext.Current.Request.QueryString["ItemIn"] ?? "";
Run Code Online (Sandbox Code Playgroud)
checkString是由"|"分隔的标题列表.
检查currentHeader我的Headers数组和checkString字符串中是否有最简单的方法是什么?我可以做到但不少于20行代码.这似乎不是最佳解决方案.
c# ×8
.net ×3
c#-4.0 ×3
.net-3.5 ×2
asp.net ×1
c#-6.0 ×1
dictionary ×1
enums ×1
javascript ×1
jquery ×1
jquery-2.0 ×1
lambda ×1
linq ×1
sql ×1
string ×1