标签: compact-framework

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

紧凑框架 - 检索国家和地区列表

下午的人!

我正在尝试在我的Compact Framework(移动)应用程序上实现一个县列表.

我可以使用CultureInfo.GetCultures(.. etc)在完整的.Net框架中轻松完成此操作.但是,CF似乎缺少这个功能?

有什么方法可以返回我可以填充到ComboBox中的国家/地区列表(如果可能的话,还有地区)?

操作系统有一个国家列表,所以必须有办法吗?

我期待着回复!

.net c# compact-framework cultureinfo

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

大型XML文件,XmlDocument不可行但需要能够搜索

我正在努力使用一个合理的逻辑循环来从XML文件中剥离出太大的节点,以便与支持.NET类的XPath一起使用.

我试图用代码执行相同但使用XmTextReader替换我拥有的单行代码(使用XPath查询字符串调用SelectNodes).

我必须通过以前使用的XPath查询(仅供参考)说明几个级别:

ConfigurationRelease/Profiles/Profile[Name='MyProfileName']/Screens/Screen[Id='MyScreenId']/Settings/Setting[Name='MySettingName']
Run Code Online (Sandbox Code Playgroud)

我觉得这很烦人但很简单.但是,我似乎无法让循环正确.

我需要获取一个节点,检查其下的节点以查看该值是否与目标字符串匹配,然后再向下走(如果有)或跳过该分支(如果不匹配).

事实上,我认为我的问题是,如果我没有把它分开,我不知道怎么忽略一个分支.我不能允许它走不相关的分支,因为元素名称不是唯一的(如XPath查询所示).

我以为我可以维护一些布尔值,例如当我点击Profile节点时bool expectingProfileName设置为true.但是,如果它不是我想要的特定配置文件节点,我就无法离开那个分支.

所以...希望这对某人有意义......我一直在盯着这个问题几个小时,可能只是遗漏了一些明显的东西......

我想发布一部分文件,但无法弄清楚结构大致如何:

ConfigRelease > Profiles > Profile > Name > Screens > Screen > Settings > Setting > Name
Run Code Online (Sandbox Code Playgroud)

我将知道ProfileName,ScreenName和SettingName,我需要设置节点.

我试图避免在一次点击中读取整个文件,例如在app启动时,因为其中的一半内容将永远不会被使用.我也无法控制生成xml文件的内容,因此无法更改它来生成多个较小的文件.

任何提示将不胜感激.

UPDATE

我重新打开了这个.一张海报建议XPathDocument应该是完美的.Unfortunatley,我没有提到这是一个移动应用程序,并且不支持XPathDocument.

大多数标准的文件并不大,这就是系统最初被编码为使用XmlDocument的原因.它目前是4MB,显然大到足以在移动应用程序加载到XmlDocument时崩溃.它可能就像它现在出现的那样,因为文件会变得更大.无论如何,我现在正在尝试DataSet建议,但仍然对其他想法持开放态度.

更新2

我有点怀疑,因为有不少人说他们不会指望这么大的文件会让系统崩溃.进一步的实验表明,这是间歇性的崩溃.昨天它每次都崩溃了,但今天早上我重置设备后,我无法重现它.我现在正试图找出一套可靠的生殖步骤.并且还决定了解决问题的最佳方法,我相信它仍然存在.我不能放弃它,因为如果应用程序无法访问此文件,它是无用的,我不认为可以告诉我的用户,当我的应用程序运行时,他们无法在他们的设备上运行任何其他内容... ....

c# xml mobile compact-framework xmltextreader

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

Sql Server Ce 3.5标识插入

在Sql Server CE中出现了标识列的问题

使用Server explorer时,在VS2008中,执行以下脚本

SET IDENTITY_INSERT testTable ON; 插入testTable(id,name)值(1,'Something')SET IDENTITY_INSERT testTable ON;

发送以下消息错误'不支持Set SQL构造或语句.但然后插入行好吗?!?!?!

无论如何,当我尝试通过C#做同样的事情时,将该脚本作为命令文本,它无法说错误在"插入关键字"中

我理解,对于SQL SERVER CE,该命令当时只接受一个批处理命令,所以在这种情况下我们有三个命令(它可以与完整的SQLServer一起工作)任何想法?

c# sql-server compact-framework identity-insert

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

如何让移动应用程序保持领先?

我正在为Windows Mobile开发移动应用程序.我希望系统在启动时默认启动应用程序,并且用户不能将其最小化.

因此,只有此应用程序可用,所有其他功能都被禁用.

我确信我可以定义一个启动时执行的启动器.但是我想到了一些问题:是否会有一些内存优化?我的意思是,因为只有一个应用程序可用和使用,可能会禁用其他一些程序,这可能会允许使用更少的内存?

你有这个目的的链接吗?

编辑:谢谢你的回答.我阅读了关于自助服务终端模式的链接,并发现了另一个关于这个主题的非常有趣的帖子:这个博客

它说对于自助服务终端模式应用程序,从长远来看,使用Windows CE而不是Windows移动似乎更好,因为前者更容易适应这些需求.

.net compact-framework windows-mobile

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

无法使用Environment.GetResourceString静态方法

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            var x = Environment.GetResourceString("test"); //compile-time error
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

错误是:'System.Environment'不包含'GetResourceString'的定义.

编辑:OP表示他正在使用Compact Framework,v3.5.

我不明白,我的代码出了什么问题?谢谢!

c# environment compact-framework

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

有没有办法找出抛出异常的行?

说我有这样的方法:

public void SaveData()
{
   try
   {
        foreach (var somevar1 in list.SomeType1s)
        {
            CEData.SaveRow(sometype1)
        }    
        foreach (var somevar2 in list.SomeType2s)
        {
            CEData.SaveRow(sometype2)
        }    
        foreach (var somevar3 in list.SomeType3s)
        {
            CEData.SaveRow(sometype3)
        }    
        foreach (var somevar4 in list.SomeType4s)
        {
            CEData.SaveRow(sometype4)
        }    
        foreach (var somevar5 in list.SomeType5s)
        {
            CEData.SaveRow(sometype5)
        }    
   }
   catch (Exception e)
   {
     logger.DebugException("Rollback Occured with the following stack trace: \r\n" 
         + e.StackTrace, e);
     Rollback();
     throw;
   }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法知道在捕获部分我得到了什么?我的堆栈跟踪只会说它在方法SaveData()中,但不是哪一行失败.

我可以在每一行之间添加日志记录,但我不愿意(因为各种调试代码的原因).

所以,我想我会问.抛出异常时是否可以知道正在执行哪一行?


更多信息:

看起来行号应该是标准的.我可以看到我没有得到它们的唯一原因是我正在进行Windows Mobile和Compact Framework开发.那么也许它们不包含在紧凑的框架中?(我的项目为调试信息输出设置了"完整".)

c# compact-framework exception-handling exception

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

Compact Framework 3.5 Set Form parent

在.net Compact Framework 2.0中,您可以将表单添加到另一个表单控件数组中,基本上为其他表单提供父级.

_mainForm.Controls.Add(form);

在.net cf 3.5中不允许这样做并导致异常:

System.ArgumentException: Value does not fall within the expected range. at Microsoft.AGL.Common.MISC.HandleAr(PAL_ERROR ar) at System.Windows.Forms.Control._SetParent(Control ctlParent) at System.Windows.Forms.Control.set_Parent(Control value)

是否有解决方法或替代方案?我需要能够在另一个表单的面板中为表单提供父项.

compact-framework parent .net-3.5 winforms

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

如何在Compact Framework 3.5中确定dll文件的文件版本

我想在指定路径时确定'c#'中dll文件的文件版本.假设path ="\ x\y\z.dll".

如何在给出路径时找到z.dll的文件版本?

注意:我使用Compact Framework 3.5 SP1

c# dll compact-framework assemblyfileversion

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

如何从手持设备建立SSL/TLS的安全通道?

我试图用这个代码从手持设备(Windows CE/Compact框架)调用REST方法:

public static HttpWebRequest SendHTTPRequestNoCredentials(string uri, HttpMethods method, string data, string contentType)
{
    ExceptionLoggingService.Instance.WriteLog("Reached 
fileXferREST.SendHTTPRequestNoCredentials");
    WebRequest request = null;
    try
    {
        request = WebRequest.Create(uri);
        request.Method = Enum.ToObject(typeof(HttpMethods), method).ToString();
        request.ContentType = contentType;
        ((HttpWebRequest)request).Accept = contentType;
        ((HttpWebRequest)request).KeepAlive = false;
        ((HttpWebRequest)request).ProtocolVersion = HttpVersion.Version10;

        if (method != HttpMethods.GET && method != HttpMethods.DELETE)
        {
            byte[] arrData = Encoding.UTF8.GetBytes(data);
            request.ContentLength = arrData.Length;
            using (Stream oS = request.GetRequestStream())
            {
                oS.Write(arrData, 0, arrData.Length);
            }
        }
        else
        {
            request.ContentLength = 0;
        }
    }
    catch (Exception ex)
    {
        String …
Run Code Online (Sandbox Code Playgroud)

ssl compact-framework remote-host socketexception get-request

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