小编Ger*_*orm的帖子

在单个方法中针对XSD验证XML

我需要实现一个C#方法,它需要针对外部XSD验证XML并返回一个布尔结果,指示它是否格式正确.

public static bool IsValidXml(string xmlFilePath, string xsdFilePath);
Run Code Online (Sandbox Code Playgroud)

我知道如何使用回调进行验证.我想知道是否可以在单个方法中完成,而不使用回调.我需要这个纯粹用于美容目的:我需要验证多达几十种类型的XML文档,所以我想做的就像下面这样简单.

if(!XmlManager.IsValidXml(
    @"ProjectTypes\ProjectType17.xml",
    @"Schemas\Project.xsd"))
{
     throw new XmlFormatException(
         string.Format(
             "Xml '{0}' is invalid.", 
             xmlFilePath));
}
Run Code Online (Sandbox Code Playgroud)

c# xml validation schema xsd

16
推荐指数
1
解决办法
4万
查看次数

在不安装SMTP服务器的情况下发送邮件

我有一个.Net应用程序.我希望这个应用程序向我发送电子邮件.如何在不安装SMTP服务器的情况下实现此目的?

.net c# email smtp

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

LINQ RefreshMode如何工作?

如果发生冲突,我需要用我的更改覆盖数据库中的值.我在MSDN上找到以下文章,解释了如何使用RefreshMode解决冲突:

http://msdn.microsoft.com/en-us/library/system.data.linq.refreshmode.aspx

我决定KeepCurrentValues对我的要求有意义,我也发现这个页面有一个这个模式的例子:

http://msdn.microsoft.com/en-us/library/bb399421.aspx

但是当我实现它时,数据库中的值总是覆盖我的更改.我尝试将RefreshMode更改为OverwriteCurrentValues和KeepChanges,并且每次保存数据库中的值.我的方法是在VisualStudio的调试模式下手动更改数据库中的值.VS中的代码是:

[MyDataContext] db = new [MyDataContext]();
try
{
    [MyLINQType] old = (from o in db.[MyLINQType] where o.ID=1 select o).Single();
    old.IntField = 55;

    // This is where I change the IntField value manually in the database in
    // debug mode to generate the conflict.
    db.SubmitChanges(ConflictMode.ContinueOnConflict);
}
catch (ChangeConflictException)
{
    db.ChangeConflicts.ResolveAll(RefreshMode.KeepCurrentValues);
}
Run Code Online (Sandbox Code Playgroud)

我知道冲突会出现,但每次,无论我如何更改RefreshMode,都不会保存值55,并保留我在数据库中手动进行的更改.是否有一些技巧可以达到预期的效果?我一开始尝试从代码内部生成冲突,但也没有按预期工作.也许我不明白RefreshMode应该如何工作.欢迎任何想法.

linq database conflict linq-to-sql

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

C#评论教程

我想知道哪一个是我可以向学生提供的关于" C#评论 " 的最佳材料.

c# comments

8
推荐指数
3
解决办法
4235
查看次数

有用的PHP数据库类

我正在一个小型的PHP网站上工作.我需要一个易于配置和使用的MySql数据库访问类.

不需要是一个完整的框架,我只需要一个最大的.几节课.

php mysql database

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

找出真实的文件类型

我正在处理一个处理文件上传的ASP网页.只允许上传某些类型的文件,如.XLS,.XML,.CSV,.TXT,.PDF,.PPT等.

我必须决定文件是否真的与扩展名显示的类型相同.换句话说,如果将trojan.exe重命名为harmless.pdf并上传,则应用程序必须能够发现上载的文件不是.PDF文件.

您将使用哪些技术来分析这些上传的文件?我在哪里可以获得有关这些文件格式的最佳信息?

analysis file-type asp-classic

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

在与ASP.Net应用程序相同的端口上启动.Net Web服务

我们有一个包含2个项目的简单Visual Studio解决方案:

  • A.)简单的ASP.Net网站
  • B.)在另一个ASP.Net应用程序中托管的RESTful Web服务

我们想在调试模式(F5)中简单地启动项目,并让A从B到Ajax消耗数据.我们没有可能在所有开发机器上配置IIS(因为其中一些是在客户端).问题可能是JavaScript需要与其发布的URL位于同一个域中.

有没有什么办法可以使用Visual Studio 2010开发服务器在同一端口上以调试模式同时启动两个应用程序?

如果这是不可能的,那么你可以推荐的下一个最好的东西是什么?

asp.net rest cassini web-services visual-studio-2010

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

Javascript:按名称访问对象的成员

我有一个叫做的对象themesData:

var themesData = {}
themesData.a = { key: "value" }; 
themesData.b = { key: "another value"};
Run Code Online (Sandbox Code Playgroud)

...我希望通过其名称访问其中一个成员.我得到一个包含"a"或"b"的字符串,我希望获得相应成员的值.

我很乐意得到一些帮助.

javascript

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

根据属性对 XmlNodeList 排序

我有一个XmlNodeList,其中包含来自以下 XML 示例根目录的数据包(项目)。我想根据节点的键属性值对 XmlNodeList 进行排序。排序必须非常有效,每一毫秒都很重要。

你有什么主意吗?

<root>
    <item key="1000000020">
        Content 20
    </item>
    <item key="1000000001">
        Content 1
    </item>
    ...
    <item key="1043245231">
        Content n
    </item>
</root>
Run Code Online (Sandbox Code Playgroud)

编辑:我已经有一个从项目构造的 XmlNodeList。我无法再访问 XmlDocument,只能访问项目列表。

c# xml

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

保护网站内容免受抓取工具的侵害

商业网站(ASP.NET MVC)的内容经常被竞争对手抓取.这些人是程序员,他们使用复杂的方法来抓取网站,因此无法通过IP识别它们.不幸的是,用图像替换值不是一种选择,因为网站应该仍然可以被屏幕阅读器(JAWS)读取.

我的个人想法是使用robots.txt:禁止抓取工具访问页面上的一个公共URL(这可能伪装成正常的项目详细信息链接,但对普通用户隐藏有效URL:http://example.com?itemId = 1234 禁止:http : //example.com? itemId= 123 128下.如果IP所有者进入禁止链接,则显示CAPTCHA验证.普通用户永远不会关注这样的链接,因为它不可见,谷歌不必抓取它,因为它是虚假的.这个问题是屏幕阅读器仍然读取链接,我认为这不值得实施.

security asp.net-mvc web-crawler

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