我们刚刚启动并运行TFS 2010.我们将把我们的源代码迁移到TFS,但我对如何组织代码有疑问.
TFS 2010有一个新的项目集合概念,因此我决定组织内的不同团队将获得他们自己的团队.我的团队开发了许多不同的Web应用程序,我们有几个共享组件.我们还使用了一些第三方组件(例如telerik).
显然,每个Web应用程序都是它自己的项目,但我在哪里放置共享组件?每个组件是否应该包含单独的构建和工作项目的自己的项目?
是否有针对TFS 2010的最佳实践或推荐方法?
我有一些用C#编写的Windows服务.当有人停止或启动服务时,我希望能够确定它是谁并记录该信息.
我尝试了日志,Environment.UserName但即使在我的本地机器上,它也会评估为SYSTEM.
此外,目前这些服务正在Windows 2000服务器上运行.
我有一个WCF服务,它返回一个实现IExtensibleDataObject的类.我需要在这个类中添加一个新字段.我更新了DataContract接口并对类进行了更改.现在,当我尝试运行我的客户端应用程序时,我收到以下错误:
无法加载文件或程序集'xxx.yyyy.zzzz,Version = 1.3.9.26111,Culture = neutral,PublicKeyToken = b09e2f3e9b5894f0'或其依赖项之一.定位的程序集的清单定义与程序集引用不匹配.(HRESULT异常:0x80131040)
WFC类的AssemblyVersion已被更改 - 这会破坏客户端吗?
编辑:
生产中有客户使用此服务.如果可能的话,我不想让他们更新他们的服务参考并重新部署他们的客户端以进行这个简单的更改.
我有两个表,Quote和Agent.Quote有一个名为AgentID的列,它是Agent中的外键.
在VS中将表添加到我的模型时,Quote类具有对Agent的引用.
在尝试添加新报价时,我创建了一个新的报价实体,并将代理设置为:
entity.Agent = (from x in entities.AgentEntities
where x.AgentID == quote.AgentID select x).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)
在调用SaveChanges之前,我检查对象并查看是否已设置所有值.Agent对象的所有值都已设置.我甚至检查了EntityKey属性并设置了它.
尽管存在值,但我收到此错误:
Cannot insert the value NULL into column 'AgentID', table 'Database.dbo.Quote';
column does not allow nulls. INSERT fails.
Run Code Online (Sandbox Code Playgroud)
我不确定还有什么要检查,也许有办法查看SQL?
编辑:我在我的应用程序中使用存储库模式.我在我的应用程序中使用PONO然后创建新的实体对象.当我保存新报价时,我称之为:
public override void CreateQuote(Quote quoteToCreate)
{
var entity = ConvertQuoteToQuoteEntity(quoteToCreate);
entities.AddToQuoteEntities(entity);
entities.SaveChanges(); //Error is thrown here
}
private QuoteEntity ConvertQuoteToQuoteEntity(Quote quote)
{
var entity = new QuoteEntity();
if (quote != null)
{
entity.QuoteID = quote.QuoteID;
entity.DiscoveryMethod = quote.DiscoveryMethod;
entity.CompletedDateTimeStamp = quote.CompletedDateTimeStamp;
entity.CommisionAmount = quote.CommisionAmount; …Run Code Online (Sandbox Code Playgroud) 我们已经安装了TFS 2010 RC.默认情况下,它会创建一个名为DefaultCollection的项目集合.我想创建一个新的项目集合.使用TFS管理工具,团队资源管理器或Web界面我看不到这种方法.
服务器上有一个控制台来执行此操作但我们的网络管理员不会/不能让我直接访问服务器(但我确实拥有完整的TFS管理员权限).我还能尝试别的吗?
今天在审查公关时我在课堂上看到了这个:
public bool ?Selected { get; set; } //question mark in front of property name
Run Code Online (Sandbox Code Playgroud)
我怀疑开发商的意思是这个
public bool? Selected { get; set; } //question mark at end of type
Run Code Online (Sandbox Code Playgroud)
我很惊讶这甚至遵守了所以我自己尝试了,发现这是合法的代码,它最终做同样的事情.
我的问题是:这两者之间是否存在任何微妙(或不那么微妙)的区别?
我在页面上有一个jqGrid,用户可以单击按钮添加新行.如果页面上已有足够的行来填充网格的可见部分,则会添加新行并显示滚动条,但用户需要滚动才能看到新行.
有没有办法以编程方式执行此操作?
我有一个模块,可以将电子邮件发送到指定的电子邮件地址,但我想将电子邮件收件人默认为门户网站管理员.我该如何检索这些信息?
为清楚起见,当我在我的问题中提到层时,我指的是物理层(即用于演示,应用和数据库的不同服务器)
我的公司有一个面向公众的网站,目前建立为典型的2层系统(Web服务器和数据库服务器).
很快,一个项目将开始,我们将重新编写整个网站.我们需要将项目分成3个物理层.实际上,当您考虑浏览器时,您可以将其视为4个物理层.
根据我的经验,大多数asp.net应用程序都是基于2层构建的.Web应用程序本身可能有多个层,但物理上它部署到两个服务器(Web和DB).
我搜索了一些例子,但似乎层和层混淆了.我看到很多多层示例,但没有多层示例.
简而言之,Web应用程序似乎对应用程序层进行Web服务或WCF调用,使用ADO(或L2S或EF)将数据与数据库进行编组.
ASP.MVC有助于实现这一目标吗?它是否更容易或只是不同?
这个地方有一个很好的参考或例子吗?
我刚刚继承了有超过300个代码的代码:
catch(Exception ex)
{
string s = ex.Message ;
}
Run Code Online (Sandbox Code Playgroud)
下次我遇到写这篇文章的人时,我该怎么办呢?
不过实话说...
这显然是编码恐怖,是程序员可以做的最糟糕的事情之一.我是否应该通过并删除所有这些并查看运行应用程序时的真实情况?你怎么会纠正这个错误?
这是一个WinForms应用程序,由我的组织内部运行约24个用户.
我在VS 2012中使用内置文件比较实用程序来比较源代码历史记录中的两个文件.它做了一些事情,导致比较的一方消失,我疯了,试图弄清楚如何把它带回来.如何制作,以便两个文件并排显示?
我已经尝试过:关闭所有窗口并重新打开它们,重新启动VS,删除.SUO文件并重新加载项目.- 没有骰子.
c# ×3
tfs2010 ×2
wcf ×2
.net ×1
asp.net ×1
asp.net-mvc ×1
diff ×1
dotnetnuke ×1
javascript ×1
jqgrid ×1
jquery ×1
linq-to-sql ×1