更新:也许这在我的原始帖子中并不清楚,但我主要想知道如何在构建解决方案时构建javascript代码的最佳实践,而不仅仅是学习如何使用API(尽管这当然很重要).
我需要为网站添加功能,我们的团队决定使用Web服务来接近解决方案,该服务从网站内接收来自JSON格式的AJAX请求的调用.Web服务已创建并且运行良好.现在我的任务是编写解决方案的javascript/html方面.
如果我在C#中解决这个问题,我会创建单独的类来格式化请求,处理AJAX请求/响应,解析响应,最后以某种方式将响应插入到DOM中.我会在每个类中适当地构建属性和方法,尽可能在适当的地方分离功能和结构.
但是,我必须在javascript中解决这个问题.首先,我如何以我从C#接近它的方式在javascript中处理我的解决方案?或者更重要的是,在javascript中处理结构化代码的更好方法是什么?
任何建议或链接到网上有用的材料将不胜感激.
注意:虽然可能与此问题没有立即相关,但值得注意的是我们将在我们的解决方案中使用jQuery.
我在PowerShell中看到字符串连接中的奇怪行为.起初我使用"$var1: Hello"语法进行字符串替换,但随后切换到简单的连接,+因为它不起作用.现在我注意到使用完全相同的赋值表达式,我得到两个不同的结果.
这对我来说很麻烦,但我想确保我没有做错事.
function Test-Diff([string] $sRepoGUID, [string] $sChangeset1, [string] $sChangeset2){
$url = $g_backendUrl + "repo/" + $sRepoGUID + "/diff/" + $sChangeset1 + ":" + $sChangeset2 + "?format=json&ignorews=True&maxsize=100000&timeout=10"
Write-Output $url
}
$g_backendUrl = "http://localhost:56783/"
$sRepoGUID = '34CAA433-1600-469E-95B7-35CA0A0FECF4'
$sChangeset1 = '9d21e91b213a07e56d16a9b8fe519ad570d5c46e'
$sChangeset2 = '68269169cdd0b803d0e419752ce9cae627e589e5'
$url = $g_backendUrl + "repo/" + $sRepoGUID + "/diff/" + $sChangeset1 + ":" + $sChangeset2 + "?format=json&ignorews=True&maxsize=100000&timeout=10"
Write-Output $url
Test-Diff($sRepoGUID, $sChangeset1, $sChangeset2)
Run Code Online (Sandbox Code Playgroud)
这将以下内容写入控制台:
http://localhost:56783/repo/34CAA433-1600-469E-95B7-35CA0A0FECF4/diff/9d21e91b213a07e56d16a9b8fe519ad570d5c46e:68269169cdd0b803d0e419752ce9cae627e589e5?format=json&ignorews=True&maxsize=100000&timeout=10
http://localhost:56783/repo/34CAA433-1600-469E-95B7-35CA0A0FECF4 9d21e91b213a07e56d16a9b8fe519ad570d5c46e 68269169cdd0b803d0e419752ce9cae627e589e5/diff/:?format=json&ignorews=True&maxsize=100000&timeout=10
Run Code Online (Sandbox Code Playgroud)
注意第一个字符串是如何包含/diff/与:在字符串中的正确位置.第二个字符串中有空格,其中/diff/和 …
使用 javascript,我需要解析text/html电子邮件的 Content-Type部分并仅提取 HTML 部分。这是有问题的邮件源部分的示例:
------=_Part_1504541_510475628.1327512846983
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 7bit
<html ... a bunch of html ...
/html>
Run Code Online (Sandbox Code Playgroud)
我想提取之间(含)的一切<html>标签后text/html。我该怎么做呢?
注意:我可以使用 hacky regex。我不希望这能防弹。
我试图在Silverlight客户端中呈现MySQL服务器数据,而我目前的攻击计划是使用实体框架将MySQL与RIA服务一起使用,提供Silverlight客户端和实体框架之间的数据访问.
但是,我只是试图向用户提供数据,我不希望我或其他人能够更改MySQL中的数据.
简而言之,我希望有一种方法可以简单地忽略所有实体类型的setter.我只想要吸气剂.我希望"只读"访问MySQL.但是,似乎我唯一的选择是将每个字段上的"Setter"更改为Internal,Private,Protected或Public.
有没有更好的方法来完成我想要做的事情?
.net silverlight entity-framework data-modeling wcf-ria-services
我一直在阅读Daniel Solis的Illustrated C#2008(一本优秀的书,顺便说一下),并决定花更多时间在活动上来进一步了解这个主题.我试图理解为什么每次运行程序时都会看到不同的结果,以及我可以从中学到什么.
(下面的源代码)在本书的示例代码中,有一个MyTimerClass订阅的事件System.Timers.Timer.还有另外两个类,ClassA和ClassB,它们都有写入控制台的事件处理程序(一个是静态而另一个不是).在main程序的功能中,这些类的事件处理程序与一个实例中的事件绑定在一起MyTimerClass.另一个函数通过lambda表达式添加到事件成员.
在使用作者的代码之后,我决定添加另一个类ClassC.Main我不是在程序的函数中添加事件处理程序,而是决定MyTimerClass在ClassC构造函数中创建一个单独的对象,然后订阅该MyTimerClass事件.
当我在3个不同的场合运行我的代码4.25秒时,我的结果总是以不同的顺序.从事件Main顺序的功能总是被调用ClassA,ClassB,然后LAMBDA以相同的顺序.但是,ClassC似乎总是以完全随机的顺序调用另一个事件.我还注意到第一组方法调用似乎有稍微不同的时间,而后续的组都有相同的时间.这是为什么?
(1) Event 1 - ClassA - 51:259
Event 2 - ClassC - 51:259
(2) Event 1 - ClassB - 51:261
(3) Event 1 - Lambda - 51:262
(1) Event 1 - ClassA - 52:271
(2) Event 1 - ClassB - 52:271
(3) Event 1 - Lambda …Run Code Online (Sandbox Code Playgroud) 我正在开发一个.NET手机应用程序,我在其中有一个显示给用户的内存中的项目列表.当用户点击用户界面中的项目时,他们将被带到第二个视图中该项目的"详细信息"视图.我目前正在我的班级中使用身份属性来引用列表中的唯一项目,但我想知道是否有更好的方法.
我正在System.Windows.Navigation设置UriMappings如下:
<nav:UriMapping Uri="/Items/{itemId}"
MappedUri="/Views/Items.xaml?itemId={itemID}" />
Run Code Online (Sandbox Code Playgroud)
然后我使用NavigationService这样导航:
NavigationService.Navigate(new Uri("/Items/" + item.id.ToString(),
UriKind.Relative));
Run Code Online (Sandbox Code Playgroud)
所有这些都很有效,但我不知道我喜欢为我的Item类包含一个标识列,以便可以将唯一的字符串标识传递给MappedUri查询字符串.我显示列表的用户界面控件为我提供Item了SelectionChanged事件中的底层对象,所以我想知道是否有一种方法可以将该Item对象与唯一的字符串值"匹配" 到列表中的相应引用.如果我可以提供导航服务的简单对象引用,这将很容易,但我不知道如何使用字符串值.这是什么GetHashCode(),如果是的话,我该如何正确使用它?
我有一个Silverlight DataGrid,每个列都填充了不同类型的数据.我试图弄清楚如何格式化单元格的某些内容DataGrid,特别是日期和格式.
我有一个日期列,当前显示如下:3/11/2010 12:00:00 AM.我宁愿它显示像3/14/2010.
我有一个数字列,目前显示如下:51.32.我宁愿它显示为51.32美元的货币.
我不知道怎么能这样做.我更喜欢在XAML而不是C#中进行,但两种解决方案都很好.
作为参考,到目前为止这是我的XAML:
</data:DataGridTextColumn>
<data:DataGridTextColumn Header="Payee"
Binding="{Binding Payee}"/>
<data:DataGridTextColumn Header="Category"
Binding="{Binding Category}"/>
<data:DataGridTextColumn Header="Memo"
Binding="{Binding Memo}"/>
<data:DataGridTextColumn Header="Inflow"
Binding="{Binding Inflow}"/>
<data:DataGridTextColumn Header="Outflow"
Binding="{Binding Outflow}"/>
</data:DataGrid.Columns>
Run Code Online (Sandbox Code Playgroud) .net ×4
c# ×4
silverlight ×3
javascript ×2
datagrid ×1
email ×1
mime ×1
powershell ×1
regex ×1
string ×1
xaml ×1