小编Dan*_*ell的帖子

WCF服务加载的运行方法

我的[OperationContract]的wcf服务是由客户端触发的.但我想在我的WCF服务中运行一个方法,该服务在服务启动时运行(即;当我启动服务时,在服务器重启后我想用数据库中的项填充字典).谢谢.

.net c# wcf

2
推荐指数
1
解决办法
765
查看次数

使用中间方法将c#List传输到另一个列表

不确定标题,但我有这个任务,我遇到了麻烦.

我有一个从WCF服务下载的列表.

即:

 List<Stops_edited_small> StopsList = new List<Stops_edited_small>(e.Result);
Run Code Online (Sandbox Code Playgroud)

该清单有几个项目

两个是:

LatitudeField
LongitudeField
Run Code Online (Sandbox Code Playgroud)

基本上,我需要做的是通过这样做为列表中的每个记录创建一个Geocoordinate值:

GeoCoordinate(Convert.ToDouble(LatitudeField), Convert.ToDouble(LongitudeField));
Run Code Online (Sandbox Code Playgroud)

然后在新列表中的每个记录中添加Geocoordinate值,然后我可以使用它.

合理?我不确定我会怎么做.我是否需要某种foreach循环来对我的原始列表进行Geocoordinate转换?我是否必须先将它转换成一个类才能做到这一点?

谢谢,任何帮助或思考的欢迎.

(编辑:只是添加这个是在Windows手机上,所以.net 4可用)

.net c# collections list

2
推荐指数
2
解决办法
237
查看次数

Linq-to-SQL - 不工作

我在WCF服务中有这个代码C#代码:

using (DataClasses1DataContext db = new DataClasses1DataContext())
        {
            var members = from member in db.Stops_edited_smalls.Take(25)
                          where Math.Abs(Convert.ToDouble(member.Latitude) - curLatitude) < 0.05
                          && Math.Abs(Convert.ToDouble(member.Longitude) - curLongitude) < 0.05
                          select  member;
            return members.ToList();
        }
Run Code Online (Sandbox Code Playgroud)

拥有:

  .Take(25)
Run Code Online (Sandbox Code Playgroud)

如上所述,不返回任何报复.为什么这样?(没有.Take(25))它工作正常

c# sql .net-4.0 linq-to-sql

2
推荐指数
2
解决办法
1178
查看次数

替换字符串中的文本

我需要在我的字符串中替换""with的所有实例"null".

我打算用

 result.Replace("", ""); 
Run Code Online (Sandbox Code Playgroud)

但我似乎无法找到一种方法来指定这两个".

c# string

2
推荐指数
2
解决办法
152
查看次数

退出时WP7运行方法

我的WP7中有一个页面,其中包含一些文本框.按后退键时,运行此方法以保存内容:

 protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
    {
        var settings = IsolatedStorageSettings.ApplicationSettings;

        settings["remZone"] = txtBoxZone.Text;
        settings["remSpace"] = txtBoxSpace.Text;
    }
Run Code Online (Sandbox Code Playgroud)

问题是有些用户不会按后退按钮,但会按主页按钮退出应用程序,因此内容不会保存.

我认为如果可能的话,有两种方法可以解决这个问题:1.当按下主页按钮时,是否存在运行此方法的函数,如onBackKeyPress.2.当用户输入文本框时,是否有一种简单的方法可以保存文本框的内容?

谢谢.

编辑:

解决方案是:

   protected override void OnNavigatingFrom(NavigatingCancelEventArgs e)
     {
         var settings = IsolatedStorageSettings.ApplicationSettings;

         settings["remZone"] = txtBoxZone.Text;
         settings["remSpace"] = txtBoxSpace.Text;
     }
Run Code Online (Sandbox Code Playgroud)

.net c# isolatedstorage windows-phone-7

1
推荐指数
1
解决办法
487
查看次数

从XML标记中解析和拆分文本

我收到了一个XML RSS提要.其中一个标签看起来像这样:

<georss:point>55.0794503724671 -3.31266344234773</georss:point>
Run Code Online (Sandbox Code Playgroud)

我需要一种简单的方法将这两个lat和long值提取为单独的值[作为我的其他XML读取foreach循环的一部分..].

编辑:

我现在正在尝试:

private void OnOpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
    {
     var document = XDocument.Load(e.Result);

        if (document.Root == null)
            return;

        var georss = XNamespace.Get("http://www.georss.org/georss");

        var events = from ev in document.Descendants("item")

   //how can I define the below for the Value.split?
 //var points = from point in parentElement.Elements(geoRssNs + "point") 


     let values = ev.Value.Split(' ')  

             select new              
           {
             Latitude = double.Parse(values[0], CultureInfo.InvariantCulture),
             Longitude = double.Parse(values[1], CultureInfo.InvariantCulture), 

             Title = (ev.Element("title").Value),
             Description = (ev.Element("description").Value),
             PubDate = (ev.Element("pubDate").Value),
           }; 


             //Add pushpin …
Run Code Online (Sandbox Code Playgroud)

c# xml silverlight silverlight-4.0 windows-phone-7

0
推荐指数
1
解决办法
864
查看次数

C#++和 - 将double var递增0.1

道歉,如果有人问过,但我找不到.

我有一个双变量,我正在做++和 - 增加和减少值.

例如,我的数字是95.8,而++则是96.8

但我希望++运算符每次增加0.1,因此数字会增加到95.9.

谢谢,丹

.net c#

0
推荐指数
1
解决办法
2637
查看次数

为什么我的ftp上传方法这么慢?

我编写了一个控制台应用程序,用于从FTP下载文件,然后上传到不同的FTP位置.文件下载大约需要10秒钟,但上传大约需要6分钟.有256个文件,每个大小约5-30KB.非常小.

上传和下载代码非常相似,它遍历目录中的所有文件然后上传.它如下所示非常简单,它迭代并从D:\ LEV \文件夹将文件上传到ftp.

编辑:这是在Azure'小'Windows虚拟机上运行,​​所以我假设带宽不是问题?此外,我在另一个使用Windows ftp.exe上传的虚拟机上执行相同的任务,它比我在同一台机器上的控制台应用程序快2倍.

任何线索为什么它如此缓慢,或有没有办法提高速度?

static public void Upload(string file1)
{        
    string upftpServerIP = "ftp://ftp.domain.co.uk/lev/";
    string upftpUserID = "username";
    string upftpPassword = "password";

    string uri = upftpServerIP + file1;
    Uri serverUri = new Uri(uri);
    if (serverUri.Scheme != Uri.UriSchemeFtp)
    {
       return;
    }
    FtpWebRequest reqFTP;
    reqFTP = (FtpWebRequest)FtpWebRequest.Create(new Uri(upftpServerIP + file1));
    reqFTP.Credentials = new NetworkCredential(upftpUserID, upftpPassword);
    reqFTP.KeepAlive = false;
    reqFTP.Method = WebRequestMethods.Ftp.UploadFile;
    reqFTP.UseBinary = true;
    reqFTP.Proxy = null;
    reqFTP.UsePassive = true;

    Console.WriteLine("Uploading " + file1);

    FileStream fs = File.OpenRead(@"D:\LEV\" + …
Run Code Online (Sandbox Code Playgroud)

c# ftp ftpwebrequest

0
推荐指数
1
解决办法
2942
查看次数

从Windows Phone获取"真实"时间

我在我的应用程序中有一个函数,我将Unix Epoch的毫秒数与当前时间进行比较:

 DateTime.Now
Run Code Online (Sandbox Code Playgroud)

这导致时间不同,即:剩余2分钟或剩余4分钟.

我发现的问题是,有些用户没有在手机上正确设置时钟,或者故意将它略微向前推.

这导致上面的计算不正确.

有没有办法围绕这个,即; 从别人那里读"真实"的时间.时间计算是在电话而不是服务器端完成的,以方便使用.

c# .net-4.0 windows-phone

0
推荐指数
1
解决办法
203
查看次数