我正在尝试使用由加密的.config文件提供的有限管理员帐户的凭据创建文件夹 - 现在我的代码在假设用户无法访问这些目录的情况下运行,因此在给定时会抛出unauthorizedexception访问代码否则有效,但我不能这样做,因为它会危及我们的安全.我知道如何从加密文件中取出我的用户名/密码,我只是不确定我应该用什么库或语法来模仿; 这是我的代码:
//set the cursor
string activeDir = "\\\\department\\shares\\users\\";
//create directory with userID as the folder name
string newPath = System.IO.Path.Combine(activeDir + userID);
System.IO.Directory.CreateDirectory(newPath);
Run Code Online (Sandbox Code Playgroud)
所以我需要一种方法来提供凭证,但我不知所措 - 我一直在使用System.DirectoryServices.AccountManagement和pricipalcontext提供用户名/密码来更改活动目录...我需要使用一个类似的库来更改文件系统?任何帮助将不胜感激,谢谢!
错误代码非常糟糕,ERR_CONNECTION_RESET有许多原因,我在其他问题上找到的原因与大型Web服务调用的MaxRequestLength太小有关.我返回的数据只有几个KB,所以这不是问题.
这是我的界面代码
[WebGet(RequestFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.WrappedRequest,
ResponseFormat = WebMessageFormat.Json,
UriTemplate = "GetReportByID?ReportID={ReportID}")]
[OperationContract]
UsageReport GetReportByID(int ReportID);
Run Code Online (Sandbox Code Playgroud)
这是实施
public UsageReport GetReportByID(int ReportID)
{
return new UsageReport(ReportID);
}
Run Code Online (Sandbox Code Playgroud)
这是UsageReport的类代码
[DataContract]
public class UsageReport
{
[DataMember]
List<UsageItem> RL;
public UsageReport(int reportID)
{
RL = new List<UsageItem>();
using (SqlDataReader dr = DBUtility.ExecuteReader(cmd, "DBString"))
{
while (dr.Read())
{
ItemNumber = dr["ItemID"] as int? ?? 0;
RL.Add(new UsageItem(ItemNumber));
}
dr.Close();
}
}
public class UsageItem
{
int ItemNumber;
public UsageItem(int ItemNumber)
{
this.ItemNumber = …Run Code Online (Sandbox Code Playgroud) 所以我一直在努力更好地理解这两者之间的区别,但我真正能找到的信息是DataSets和DataTables之间的区别 - 单个数组只能容纳一种数据类型,而据我所知,DataTables基本上是通用多维数组,它与存储在内存中的DataSource有1:1的关系.这准确吗?DataTables'只是'一个通用的多维数组还是我错过了一些基本的区别?