我们刚从TFS切换到SVN,到目前为止我们都喜欢它.
但是,它确实引入了一些新问题.
一个是项目文件(特别是.vbproj)的处理方式..vbproj文件当然总是随着文件和引用的更改而改变,如果有几个人正在进行协作,则会出现冲突.
奇怪的是,在TFS中,我们从来没有必要处理这些冲突,特定的部分是自动处理的.现在在SVN中,我们在合并工具中使用XML,并且已经出现了一些错误.
你怎么处理这个?有小费吗?
编辑:顺便说一句,我们正在使用VisualSVN.
目前我有一个应用程序从我的Web应用程序接收上传的文件.我现在需要将该文件传输到恰好位于同一网络上的文件服务器(但事实并非总是如此).
我试图在C#.NET中使用webclient类.
string filePath = "C:\\test\\564.flv";
try
{
WebClient client = new WebClient();
NetworkCredential nc = new NetworkCredential(uName, password);
Uri addy = new Uri("\\\\192.168.1.28\\Files\\test.flv");
client.Credentials = nc;
byte[] arrReturn = client.UploadFile(addy, filePath);
Console.WriteLine(arrReturn.ToString());
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Run Code Online (Sandbox Code Playgroud)
位于192.168.1.28的计算机是文件服务器,共享c:\ Files.截至目前,我收到登录失败的错误用户名或密码错误,但我可以打开资源管理器并输入该路径成功登录.我也可以使用远程桌面登录,所以我知道用户帐户有效.
有关此错误的任何想法?是否可以像这样直接传输文件?使用webclient类或者其他类?
我知道其他语言中的库可以采用包含本地文件路径或URL的字符串,并将其作为可读IO流打开.
在ruby中有一个简单的方法吗?
有谁知道如何在WPF(3.5SP1)中数据绑定WebBrowser的.Source属性?我有一个listview,我希望在左边有一个小的WebBrowser,在右边有内容,并在每个WebBrowser的源中为每个绑定到列表项的对象中的URI进行数据绑定.
这是我迄今为止的概念证明,但" <WebBrowser Source="{Binding Path=WebAddress}""不编译.
<DataTemplate x:Key="dealerLocatorLayout" DataType="DealerLocatorAddress">
<StackPanel Orientation="Horizontal">
<!--Web Control Here-->
<WebBrowser Source="{Binding Path=WebAddress}"
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
ScrollViewer.VerticalScrollBarVisibility="Disabled"
Width="300"
Height="200"
/>
<StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<Label Content="{Binding Path=CompanyName}" FontWeight="Bold" Foreground="Blue" />
<TextBox Text="{Binding Path=DisplayName}" FontWeight="Bold" />
</StackPanel>
<TextBox Text="{Binding Path=Street[0]}" />
<TextBox Text="{Binding Path=Street[1]}" />
<TextBox Text="{Binding Path=PhoneNumber}"/>
<TextBox Text="{Binding Path=FaxNumber}"/>
<TextBox Text="{Binding Path=Email}"/>
<TextBox Text="{Binding Path=WebAddress}"/>
</StackPanel>
</StackPanel>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud) 我有一个本地用户,它是Administrators本地组的成员.
当我运行此代码时:
using System;
using System.DirectoryServices;
namespace nanttest
{
class Program
{
public static void Main(string[] args)
{
using(DirectoryEntry entry = new DirectoryEntry("IIS://localhost/W3SVC"))
{
object absobject = entry.NativeObject;
Console.WriteLine("Name: {0}", entry.Name);
}
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我收到:
未处理的异常:System.Runtime.InteropServices.COMException(0x80070005):访问被拒绝.
在System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)中的System.DirectoryServices.DirectoryEntry.Bind()at System.DirectoryServices.DirectoryEntry.get_NativeObject()at nanttest.Program.Main(String [] args)in c:\ Work \nanttest \nanttest\Program.cs:第20行
如果我以管理员身份登录时运行此代码,则可以正常工作.
此外,如果我以DomainAdmin用户身份登录,则此代码将失败.我已将MYDOMAIN\DomainAdmins和MYDOMAIN\mydomainuser添加为本地Administrators组的成员.
我应该为这些用户添加哪些其他权限,以便他们可以运行此代码.
.net permissions directoryservices administrator windows-server-2008
我目前正在开发一个项目,它挂钩到各种系统调用并将内容写入日志,具体取决于调用的是哪一个.因此,例如,当我更改文件的权限时,我会在跟踪旧权限和新权限的日志文件中写一个小条目.但是,我在确定我应该注意的位置时遇到了一些麻烦.对于上面的例子,strace告诉我"chmod"命令使用系统调用sys_fchmodat().但是,还有一个sys_chmod()和一个sys_fchmod().
我确信内核开发人员知道他们在做什么,但我想知道:所有这些(看似)冗余系统调用的重点是什么,是否有关于哪些用于什么的规则?(即"at"系统调用或以"f"为前缀的那些意味着做某些特定的事情?)
我一直是DHTML日历的忠实粉丝http://www.dynarch.com/projects/calendar/
我计划将这个用于ASP.NET中即将推出的项目,但我不介意找到一个专门用作ASP.NET用户控件的新日历控件.
有没有人知道我应该看看哪些好的?
谢谢.
我在本地模式下使用Visual Studio 2008中的ReportViewer控件,其中对象作为数据源.我的类映射到数据库中的数据表.在对象中,它根据需要加载相关对象.因此,在您尝试使用该属性之前,它会将引用保留为null,然后它会尝试自动从数据库加载它.这些类使用System.Data.SqlClient命名空间.
当我与Windows窗体应用程序中的对象进行交互时,一切都按预期工作.但是,当我传递要用作报表数据源的对象并尝试自动加载相关对象时,它会失败.代码创建一个SqlConnection对象,当我在其上调用GetCommand()时,抛出以下异常:
[System.Security.SecurityException] {
"Request for the permission of type 'System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed."
} System.Security.SecurityException
Run Code Online (Sandbox Code Playgroud)
我已经尝试搜索错误,但显示的所有结果都是在SQL Server或ASP.Net上运行的CLR程序集.我在创建SqlConnection对象之前尝试在我的代码中添加以下调用(如搜索结果中所示),但它显然没有做任何事情:
System.Data.SqlClient.SqlClientPermission(System.Security.Permissions.PermissionState.Unrestricted).Assert();
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我在一些项目的过程中开发了一种用于创建不可变(只读)对象和不可变对象图的模式.不可变对象具有100%线程安全的优点,因此可以跨线程重用.在我的工作中,我经常在Web应用程序中使用此模式来配置设置以及我在内存中加载和缓存的其他对象.缓存对象应始终是不可变的,因为您希望保证它们不会意外更改.
现在,您可以轻松地设计不可变对象,如下例所示:
public class SampleElement
{
private Guid id;
private string name;
public SampleElement(Guid id, string name)
{
this.id = id;
this.name = name;
}
public Guid Id
{
get { return id; }
}
public string Name
{
get { return name; }
}
}
Run Code Online (Sandbox Code Playgroud)
这对于简单的类来说很好 - 但是对于更复杂的类,我不喜欢通过构造函数传递所有值的概念.在属性上设置setter是更理想的,构建新对象的代码更容易阅读.
那么如何使用setter创建不可变对象?
好吧,在我的模式中,对象开始是完全可变的,直到你用一个方法调用冻结它们.一旦一个对象被冻结,它将永远保持不变 - 它不能再次变成一个可变对象.如果您需要对象的可变版本,则只需克隆它即可.
好的,现在谈谈一些代码.我在下面的代码片段中试图将模式简化为最简单的形式.IElement是所有不可变对象必须最终实现的基接口.
public interface IElement : ICloneable
{
bool IsReadOnly { get; }
void MakeReadOnly();
}
Run Code Online (Sandbox Code Playgroud)
Element类是IElement接口的默认实现:
public abstract class Element : IElement
{
private bool immutable;
public …Run Code Online (Sandbox Code Playgroud) c# ×4
.net ×2
asp.net ×1
browser ×1
calendar ×1
data-binding ×1
file-upload ×1
fileserver ×1
immutability ×1
kernel ×1
linux ×1
permissions ×1
ruby ×1
sqlclient ×1
stream ×1
svn ×1
system-calls ×1
vb.net ×1
vb6 ×1
webclient ×1
winforms ×1
wpf ×1
xaml ×1