小编Dan*_*son的帖子

使用'System.IO.Directory.Delete'时,"拒绝访问系统路径"

我正在使用System.IO.Directory.Delete并尝试删除系统文件夹,例如"我的音乐","我的视频"等,但是我收到的错误类似于"访问系统路径'C:\ users\jbloggs\Saved Games'被拒绝".然而,我可以通过资源管理器删除这些文件夹没有任何问题,我有这些文件夹的完全权限.关于我可以尝试的任何建议?

我的代码:

public static void ClearAttributes(string currentDir)
{
    if (Directory.Exists(currentDir))
    {
        string[] subDirs = Directory.GetDirectories(currentDir);
        foreach (string dir in subDirs)
            ClearAttributes(dir);
        string[] files = files = Directory.GetFiles(currentDir);
        foreach (string file in files)
            File.SetAttributes(file, FileAttributes.Normal);
    }
}
Run Code Online (Sandbox Code Playgroud)

用法:

try
{
    ClearAttributes(FolderPath);
    System.IO.Directory.Delete("C:\\users\\jbloggs\\Saved Games", true);
}
catch (IOException ex)
{
    MessageBox.Show(ex.Message);
}
Run Code Online (Sandbox Code Playgroud)

.net

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

如何返回所有aspnet_compiler错误(不仅仅是第一个目录中的错误)

有没有办法让aspnet_compiler遍历所有视图并返回所有错误,而不仅仅是当前视图目录中的错误?

例如,假设我有一个包含大量文件夹的项目......

  • Views
    • Folder1
    • Folder2
    • Folder3
    • Folder4

其中两个(Folder2Folder3)有错误.aspnet_compiler将运行,并且只返回它遇到的错误Folder2.它不会同时归还那些Folder3.一旦我修复了错误Folder2并再次运行它,它就会拿起那里的错误Folder3.我修复了那些.然后必须再次运行该工具,并再次运行,直到它全部修复.

这太烦人了!!

作为参考,这是我使用的命令:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_compiler -v / -p "C:\path\to\project"
Run Code Online (Sandbox Code Playgroud)

提前致谢!

asp.net-mvc aspnet-compiler

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

如何使用Log4Net实用程序使用c#登录数据库

目前在我的项目中,log4net用于将所有异常,信息,警告等记录到文本文件中,但现在我想要的是将所有这些细节记录到数据库表而不是文件中.
请帮我这样做.

提前谢谢了.

组态:

<log4net>
  <root>
    <level value="DEBUG" />
    <appender-ref ref="ADONetAppender" />
  </root>
  <appender name="ADONetAppender" type="log4net.Appender.ADONetAppender">
    <bufferSize value="100" />
    <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
    <connectionString value="server=xxxx; uid=xxxx; pwd=xxxx; database=xxxx" />
    <commandText value="INSERT INTO log ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" />
    <parameter>
      <parameterName value="@log_date"/>
      <dbType value="DateTime"/>
      <layout type="log4net.Layout.RawTimeStampLayout"/>
    </parameter>
    <parameter>
      <parameterName value="@thread"/>
      <dbType value="String"/>
      <size value="255"/>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%thread"/>
      </layout>
    </parameter>
    <parameter>
      <parameterName value="@log_level"/>
      <dbType value="String"/>
      <size value="50"/>
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%level"/>
      </layout>
    </parameter>
    <parameter> …
Run Code Online (Sandbox Code Playgroud)

c# log4net log4net-configuration

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

XML序列化 - XmlCDataSection为Serialization.XmlText

我在使用c#序列化cdata部分时遇到问题

我需要将XmlCDataSection对象属性序列化为元素的innertext.

我要找的结果是这样的:

<Test value2="Another Test">
  <![CDATA[<p>hello world</p>]]>
</Test>
Run Code Online (Sandbox Code Playgroud)

为了产生这个,我使用这个对象:

public class Test
{
    [System.Xml.Serialization.XmlText()]
    public XmlCDataSection value { get; set; }

    [System.Xml.Serialization.XmlAttributeAttribute()]
    public string value2 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

在value属性上使用xmltext注释时,将引发以下错误.

System.InvalidOperationException:反映属性'value'时出错.---> System.InvalidOperationException:无法序列化System.Xml.XmlCDataSection类型的成员'value'.XmlAttribute/XmlText不能用于编码复杂类型

如果我注释掉注释,序列化将起作用,但cdata部分被放入一个值元素,这对我想要做的事情没有好处:

<Test value2="Another Test">
  <value><![CDATA[<p>hello world</p>]]></value>
</Test>
Run Code Online (Sandbox Code Playgroud)

任何人都可以指出我正确的方向让这个工作.

谢谢,亚当

c# xml xml-serialization cdata

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

如果'orderby'值相同,为什么Oracle会返回特定的序列?

我对Oracle中的查询感到困惑,该查询以看似随机的顺序返回.

SELECT
  Date,
  Amount
FROM MyTable
WHERE Date = '26-OCT-2010'
ORDER BY Date
Run Code Online (Sandbox Code Playgroud)

这将返回以下数据:

   |  Date       |  Amount
--------------------------
1  |  26-OCT-10  |  85
2  |  26-OCT-10  |  9
3  |  26-OCT-10  |  100
Run Code Online (Sandbox Code Playgroud)

我无法理解为什么数据库以此特定顺序返回数据,或者为什么,因为原始表将以这种方式返回数据.

转换DateTIMESTAMP确认所有Date值都是相同的值 - 26-OCT-10 00.00.00.000000000因此,我可以排除值存在差异.但是,当我这样做时,行返回1,3,2的顺序.

这让我很生气,所以如果有人可以解释为什么会这样,那真的有助于安抚我.

我希望每次运行查询时都会以不同的顺序返回,因为条件的条件在每一行上都是相同的(因此使排序保持纯粹的机会).

提前谢谢了.

oracle sql-order-by

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

从Google Chrome扩展程序中的通知切换当前标签

我是否遗漏了Chrome 标签文档中的内容,或者有没有办法让扩展程序更改当前有效的标签?

我有一个扩展,一旦选项卡完成加载,弹出一个通知,如果未选择加载的选项卡,则为用户提供更改以将其更改为选中.或者至少这就是我想要的.

阅读通知API我没有看到任何访问方式chrome.tabs.get,但有chrome.extension.getBackgroundPage().任何人都知道如何将其变成我想要做的事情?

提前谢谢了.

javascript google-chrome google-chrome-extension

7
推荐指数
3
解决办法
8153
查看次数

在服务器上安装ODP.net以解决Oracle.DataAccess.Client.OracleException:提供程序与Oracle客户端版本不兼容

我有一个测试环境,用于我的网站将使用的服务和生产环境.在我的测试环境中,我在服务器上安装了ODP.net.到目前为止,使用Oracle的服务似乎运行得非常流畅.我根本没有在该服务器上运行Oracle客户端.另一方面,我有一个服务器上有一个Oracle客户端,但似乎没有安装ODP.net(我正在进行双重检查,但这是SO问题的情况) .在生产服务器上,我得到以下异常:

Oracle.DataAccess.Client.OracleException: The provider is not compatible with the version of Oracle client
Run Code Online (Sandbox Code Playgroud)

在两个服务器中,我在bin和lib文件夹中都有Oracle.DataAccess dll(不要认为我在lib文件夹中需要它,但为什么摇摇欲坠...我相信你能找到一个很好的理由,但是不是现在!!!).我的问题是我需要将ODP.net安装到生产服务器上吗?这是否解决了您遇到的任何问题?我看到一些SO帖子说这解决了他们的类似问题.你能推荐一个行动方案吗?谢谢!

.net oracleclient oracle11g

7
推荐指数
2
解决办法
4万
查看次数

XPath"in"运算符

XPath 1.0中是否有一个运算符在SQL中充当"in"运算符?

select * from tbl_students where id in (1,2,3)
Run Code Online (Sandbox Code Playgroud)

xml xpath xpath-1.0

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

如何通过xpath获取元素的索引?

我接下来的结构:

<div id='list'>
   <div class='column'>aaa</div>
   <div class='column'>bbb</div>
   ...
   <div class='column'>jjj</div>
</div>
Run Code Online (Sandbox Code Playgroud)

我很想知道是否有使用XPath的方法,并编写一些查询,我可以在"list"元素中获取所请求元素的索引.

我的意思是我会询问class='column'文本值的位置aaa,我会得到01...

谢谢

indexing xpath element

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

我可以通过Google Drive API获取特定文件夹大小而不是整体Google云端硬盘大小吗?

我试图通过Google云REST API获取特定的文件夹大小.

我已尝试使用REST API的" "方法,但在此方法中,我获得了总体使用的字节数和总可用空间,用于整个云存储.

但是我希望使用API​​在Google云中使用特定文件夹的总大小.

那么,有没有办法在谷歌云端硬盘API中获取特定的文件夹大小.

感谢您的帮助.

google-drive-api

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