我正在尝试在Windows 8.1上使用node.js(0.10.29)从磁盘加载UTF8 json文件.以下是运行的代码:
var http = require('http');
var utils = require('util');
var path = require('path');
var fs = require('fs');
var myconfig;
fs.readFile('./myconfig.json', 'utf8', function (err, data) {
if (err) {
console.log("ERROR: Configuration load - " + err);
throw err;
} else {
try {
myconfig = JSON.parse(data);
console.log("Configuration loaded successfully");
}
catch (ex) {
console.log("ERROR: Configuration parse - " + err);
}
}
});
Run Code Online (Sandbox Code Playgroud)
运行时出现以下错误:
SyntaxError: Unexpected token ´??
at Object.parse (native)
...
Run Code Online (Sandbox Code Playgroud)
现在,当我将文件编码(使用Notepad ++)更改为ANSI时,它可以正常工作.
任何想法为什么会这样?虽然在Windows上进行开发,但最终解决方案将部署到各种非Windows服务器上,我担心如果我将ANSI文件部署到Linux,我将在服务器端遇到问题.
根据我在这里和谷歌的搜索,代码应该适用于Windows,因为我特别告诉它期望一个UTF-8文件.
示例配置我正在阅读:
{
"ListenIP4": …Run Code Online (Sandbox Code Playgroud) 我经历过这个网站(以及其他许多网站)试图弄清楚发生了什么以及为什么这不起作用.我正在运行VS2012并创建了一个WPF C#应用程序(目标.NET 4.5).我是WPF的新手,花了很多年编写Windows Forms应用程序,但决定冒险尝试,并且我喜欢XAML到目前为止.
最终我想:1)删除网格中特定行(RowDefinition)中的用户控件2)将另一个用户控件放在该特定行中
但是,我似乎无法放置一个简单的按钮控件.我想要做的是在第4行放置一个按钮(3个零索引).这是我的XAML:
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:Custom="http://schemas.microsoft.com/winfx/2006/xaml/presentation/ribbon"
x:Class="TestApp2_WindowsClient.MainWindow"
Title="Test App 2" Height="700" Width="1000" MinHeight="700" MinWidth="1000" MaxHeight="700" MaxWidth="1000" FontSize="12" FontFamily="Segoe UI Semibold">
<Grid VerticalAlignment="Top" Name="gridMain">
<Grid.RowDefinitions>
<RowDefinition Height="60"/>
<RowDefinition Height="152"/>
<RowDefinition Height="240"/>
<RowDefinition Height="60"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0"/>
</Grid.ColumnDefinitions>
<StackPanel Name="stackButtons1" HorizontalAlignment="Left" Height="50" Margin="4,4,-310,4" Grid.Row="0" VerticalAlignment="Top" Width="300" Orientation="Horizontal" >
<Button Content="Show Bookings" Height="24" Margin="4,0,0,0" Click="Button_Click_1" />
<Button Content="Show Radio Buttons" Height="24" Margin="4,0,0,0" Click="Button_Click_2" />
</StackPanel>
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)
按钮代码(堆栈面板中的第一个按钮)是:
Button MyControl = new Button();
MyControl.Content = "Test Button!";
Grid.SetRow(MyControl, …Run Code Online (Sandbox Code Playgroud) 我有一个小的.Net 4.5 C#应用程序,它从数据源读取信息,然后将此信息推送到一个带有简单控制器的.NET 4.5 Web API站点的网站.控制器接收数据并将其放入数据库.
以下对我有用,只要应用程序可以读取它就可以写入并且所有内容都在DB中结束:
public static void PostDataToWebApi(MyDataClass tData)
{
HttpResponseMessage s = null;
try
{
s = client.PostAsJsonAsync("/api/Station/Collector", tData).Result;
s.EnsureSuccessStatusCode();
}
catch (Exception e)
{
Console.WriteLine("ERROR (ClientPost): " + e.ToString());
}
}
Run Code Online (Sandbox Code Playgroud)
以下不起作用.它发布了大约一千多条记录,然后出现了一些错误,所有错误都是"任务被取消",但是大约10秒后它恢复处理:
public static async void PostDataToWebApi(MyDataClass tData)
{
HttpResponseMessage s = null;
try
{
s = await client.PostAsJsonAsync("/api/Station/Collector", tData);
s.EnsureSuccessStatusCode();
}
catch (Exception e)
{
Console.WriteLine("ERROR (ClientPost): " + e.ToString());
}
}
Run Code Online (Sandbox Code Playgroud)
完整的错误是:
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at IICE_DataCollector_Remote.Program.<PostDataToWebApi>d__7.MoveNext() in …Run Code Online (Sandbox Code Playgroud)