Tag: .net

在Repeater中填充DropDownList不起作用

我正在尝试在转发器中填充下拉列表,但我不是很成功。 我可能使用错误的EventArgs e 。 这是我的aspx代码: KriteriePoengBeskrivelse : <span class="value score” title=””> 而背后的代码: protected void criteriaScore_ItemDataBound(object sender, DataListCommandEventArgs e) { DropDownList ddl = (DropDownList)e.Item.FindControl(“ddlRating”); for(int i=1; i > 5; i++) { ddl.Items.Add(new ListItem(i.ToString(), i.ToString())); } } 有人可以指导我走正确的道路吗? 🙂

为什么抛出TaskCanceledException并且不会总是进入调试器

我正在深入研究async-await机制并观察到抛出一个我无法解释的TaskCanceledException 。 在下面的示例中(自包含)我有声明 await Task.Run(() => null); 我知道这个语句本身是无用的,但我把问题分开了,真正的代码有逻辑,在某些情况下返回null。 为什么抛出TaskCanceledException ? 如果我返回一个任意数字(在下面的例子中为5),它就不会抛出。 此外,如果我await该方法VS的调试器中断,但如果我不await它,则只有一条消息被写入VS的输出窗口。 internal class Program { private static void Main(string[] args) { var testAsync = new TestAsync(); // Exception thrown but the debugger does not step in. Only a message is logged to the output window testAsync.TestAsyncExceptionOnlyInTheOutputWindow(); // Exception thrown and the debugger breaks testAsync.TestAsyncExceptionBreaksIntoTheDebugger(); […]

WebBrowser文档转换无效

我的页面上有一个WebBrowser控件。 要在浏览器控件中显示的页面上激活一些javascript,我调用this.myBrowser.Document.InvokeScript(“Test”); 这适用于我的开发盒与IE7,但在一个单独的测试机器上,我收到以下错误: Exception Type: System.InvalidCastException Message: Specified cast is not valid. Source: System.Windows.Forms Stack Trace: at System.Windows.Forms.UnsafeNativeMethods.IHTMLDocument2.GetLocation() at System.Windows.Forms.WebBrowser.get_Document() at InteriorHealth.EmbeddedBrowser.frmMain.CardRead(String strData) in E:\Develop\TestProject\frmMain.cs:line 265 at MyTest.frmMain.prtCardReader_DataReceived(Object sender, SerialDataReceivedEventArgs e) in E:\Develop\TestProject\frmMain.cs:line 355 测试机器正在运行IE6。 虽然我不确定,但我猜测IE版本的差异可能是错误的原因。 这听起来不错吗? 我该如何解决这个问题? frmMain.cs的第265行是: this.webKiosk.Document.InvokeScript(ConfigurationState.CardReader.Error.FireJavaScriptMethod); frmMain.cs的第355行是: CardRead(strCardData_m); 我认为WebBrowser对象上的Document属性调用抛出了exception。

没有指定类型的C#通用方法

好的,所以我是一个开始使用C#的Java人员,我正在编写并开始制作一个通用的方法,我编写的运行和编译,但它违背我所知道的关于generics应该如何工作的一切,所以我希望有人可以解释这个对我来说: 所以我有一个定义如下的generics方法: public static List CopyAsList(IEnumerable list, Object lockObject) { if (list != null) { lock (lockObject) { return new List(list); } } return null; } 但对我来说奇怪的是,我可以调用这个generics方法而无需指定T并且它可以工作: List strings = new List() { “a”, “b”, “c”}; List ints = new List() { 1,2,3}; object lockObject = new object(); foreach (string s in CopyAsList(strings, lockObject)) { […]

C#到PHP base64编码/解码

所以我有这个c#应用程序需要ping我运行linux / php堆栈的web服务器。 我遇到了基本64位编码字节的c#方式的问题。 我的c#代码如下: byte[] encbuff = System.Text.Encoding.UTF8.GetBytes(“the string”); String enc = Convert.ToBase64String(encbuff); 和PHP方面: $data = $_REQUEST[‘in’]; $raw = base64_decode($data); 更大的字符串100+字符失败。 我认为这是因为c#在编码中加了’+’但不确定。 任何线索

标记助手未在ASP.NET Core 2中处理

我添加了以下标记帮助器: using System; using System.Linq; using Microsoft.AspNetCore.Mvc.ModelBinding; using Microsoft.AspNetCore.Mvc.Rendering; using Microsoft.AspNetCore.Mvc.TagHelpers; using Microsoft.AspNetCore.Mvc.ViewFeatures; using Microsoft.AspNetCore.Razor.TagHelpers; namespace X.TagHelpers { [HtmlTargetElement(Attributes = ValidationForAttributeName + “,” + ValidationErrorClassName)] public class ValidationClassTagHelper : TagHelper { private const string ValidationForAttributeName = “k-validation-for”; private const string ValidationErrorClassName = “k-error-class”; [HtmlAttributeName(ValidationForAttributeName)] public ModelExpression For { get; set; } [HtmlAttributeName(ValidationErrorClassName)] public string ValidationErrorClass […]

如何将hex字符串转换为有符号整数?

我得到一个hex字符串,需要转换为带符号的8位整数。 目前我正在使用Int16 / Int32进行转换,这显然不会给出8位整数的负值。 如果我在hex中得到值255,我如何将其转换为-1十进制? 我假设我想使用sbyte,但我不确定如何正确地获得该值。

用坏字符替换String的错误字符

我只是想知道什么是替换必须随后替换的字符串字符的最简单方法。 例如: var str = “[Hello World]”; //enclose all occurences of [ and ] with brackets[] str = str.Replace(“[“,”[[]”).Replace(“]”,”[]]”); 期望的结果: [[]Hello World[]] 实际结果: [[[]]Hello World[]] 原因显然是已经修改过的字符串的第二个替换。 那么如何用包含“坏”字符的字符替换所有“坏”字符的出现? 快速测量所有方法表明StringBuilder是最有效的方法。 190kb文件(全部以毫秒为单位) regexTime 40.5065 replaceTime 20.8891 stringBuilderTime 6.9776 7MB文件 regexTime 1209.3529 replaceTime 403.3985 stringBuilderTime 175.2583 顺便说一下,来自John的直接StringBuilder方法的速度是Sehe的Aggregate方法的两倍 。 我做了一个扩展: public static String EncloseChars(this string input, char[] charsToEnclose, String leftSide, […]

是否可以通过正确的编码从Web响应中获取数据

using (WebResponse response = webRequest.GetResponse()) { using (var reader = new StreamReader(response.GetResponseStream())) { string tmpStreamData = string.Empty; while (!reader.EndOfStream) { while (reader.Peek() > -1) { tmpStreamData += (char)reader.Read(); } } MessageBox.Show(tmpStreamData); } } 有时我在“tmpStreamData”中得到 符号。 是否可以避免这种情况并以可读格式获取数据?

EntityFunctions.TruncateTime和DbFunctions.TruncateTime方法有什么区别?

有什么区别: EntityFunctions.TruncateTime 和 DbFunctions.TruncateTime methods?