我在这里寻找有关如何管理多个版本的项目的一些提示和技巧.
目前我有一个应用程序的开发版本,其中包括一些改进和新的功能.同时我必须做一些bug解决.很容易将错误修复到新功能无法触及的文件上,但只要我触摸具有新功能的页面即可.我每次都要评论几行代码.我觉得这不是最好的玩法.必须有一个很好的方法来解决这个问题.
问题的另一方面是部署.我经常需要等待数周才能在网站上上传新的功能.与此同时,我倾向于忘记每个已被修改(或注释为错误)的文件,并且它可能会产生错误.我听说过红宝石粉丝的capistrano,能帮助我吗?我主要是一个PHP/asp.net开发者.
php versioning deployment version-control project-management
假设我有一个基本的哑巴javascript类:
var FunctionX = function(configs) {
this.funcConfigs = configs;
}
FunctionX.prototype.getData = function() {
return $.get('/url');
}
FunctionX.prototype.show = function(promise) {
console.log(this.funcConfigs); // <-- this here is the promise itself, I'm looking to get the instance's configs
}
FunctionX.prototype.setup = function() {
this.GetData().then(show);
}
var f = new FunctionX({ "a": "b" });
f.setup();
Run Code Online (Sandbox Code Playgroud)
现在我在show函数中尝试访问实例变量"funcConfig"."这"是承诺,"funcConfigs"直接返回undefined.
我尝试用a来解决这个问题,.resolveWith(this)但它没有解决这个问题.
如何在此范围上下文中访问实例变量?
似乎每当我看到广告管理器应用程序投放的广告时,总会有大量参数添加到产品的网址中.
比如说一个随机stackoverflow广告:http://ads.stackoverflow.com/a.aspx? Task = Click&ZoneID = 4&CampaignID = 474&AdverterID = 5&BannerID = 408&SiteID = 1&RandomNumber = 464183249& Keywords =
或者这个:
如果我按照事情的逻辑,当你点击一个横幅点击时,你通常需要一些信息:"点击了多少次","由谁"(ip /注册账号/ ... ), "什么时候".
现在,如果我们查看参数,那么有更多的信息.OpenX在此基础上增加了很多:
我能想到的唯一原因是保存对db的调用,除了我真的看不到的.
任何提示或想法?
我试图了解MVC的异步/等待机制.现在我不考虑一个用例,我将退出"正常流程"(使用完全同步或完全异步端到端).我只是想确保理解为什么它在这里不起作用.
当调用"SyncMethod"时,它会无限期挂起而永远不会返回.
调用"AsyncMethod"时,它会快速返回视图而不会挂起.
调用"TaskMethod"时,它会快速返回视图而不会挂起.
我不完全清楚为什么当同步方法调用异步方法时,无法返回结果.
我在这里错过了什么?
using System;
using System.Threading.Tasks;
using System.Web.Mvc;
namespace MvcAsyncAwaitTest.Controllers
{
public class HomeController : Controller
{
/// <summary>
/// Synchronous method running async method as sync
/// Hangs at Hello().Result, never returns
/// </summary>
/// <returns></returns>
public ActionResult SyncMethod()
{
ViewBag.Message = Hello().Result;
return View();
}
/// <summary>
/// Asynchronous method awaiting asynchronous method
/// Do not hang
/// </summary>
/// <returns></returns>
public async Task<ActionResult> AsyncMethod()
{
ViewBag.Message = await Hello();
return View("Index");
}
/// …Run Code Online (Sandbox Code Playgroud) 我刚刚开始了一个新的个人项目,目标是让它能够从一开始就进行扩展.
我得到了结构的建议,创建这样的东西:
<solution>
|-- project.client.sql.queries
|-- project.admin.sql.queries
|-- project.client.business.logic
|-- project.admin.business.logic
|-- project.client.web.ui (include references of the business logic + SQL queries projects )
|-- project.admin.web.ui
Run Code Online (Sandbox Code Playgroud)
通过这种方式,我将拥有一切结构化,易于遵循以便将来扩展.我的问题在于我只想使用SQL express启动,并且可能在以后必要时转移到SQL服务器.
因此,如果我将.mdf文件添加到app_code客户端并创建.dbml(linq结构文件),我如何使用linq进入SQL查询?我无权访问ConfigurationManagerweb.ui项目.我是否必须像对web.ui一样在SQL查询项目中包含引用?否则linq似乎无法正常工作.
我主要关注最佳实践,因为我被告知后面的代码不应该包含任何业务逻辑或SQL查询 - 它们应该有自己的类库.
我在这里尝试使用实体框架与存储过程和POCOS以及2个不同的项目.
我有一个项目DataAccess(用于我的edmx和DataContexts)和一个项目BusinessEntities(用于我的POCO).
DataAccess具有BusinessEntities的参考.
在我的数据库中,我有一个非常标准的SP:
CREATE STORED PROCEDURE GetHeader
@id CHAR(35)
AS
BEGIN
SELECT ID, Name FROM mytable WHERE ID = @id
END
Run Code Online (Sandbox Code Playgroud)
datacontext是:
public class DbContext : ObjectContext
{
public ObjectResult<BusinessEntities.GetHeaderResult> GetHeader(string id)
{
return base.ExecuteFunction<BusinessEntities.GetHeaderResult>("GetHeader", new ObjectParameter("id", id));
}
}
Run Code Online (Sandbox Code Playgroud)
如果我只是这样(EDMX已经用SP更新但功能尚未导入)我有这个错误:
System.InvalidOperationException: The FunctionImport 'GetHeader' could not be found in the container 'DbEntities'.
Run Code Online (Sandbox Code Playgroud)
如果我正确导入函数我有这个错误:
System.InvalidOperationException:ExecuteFunction中的类型参数'BusinessEntites.GetHeaderResult'与函数返回的类型'DbModel.GetHeaderResult'不兼容.
我想这只是一个简单的设置,但是我似乎无法抓住它.
请注意,EDMX文件的设置不正确(CodeGenerationStrategy设置为none,CustomTool为空)
我目前正在寻找一种快速方法来同步我的生产数据库和我的dev-db.
我想用这样的东西做这件事:
mysqladmin -u <user> -p<password> <dev-db_name> | mysqldump -u <user> -p<password> --databases <production-db-name> --add-drop-table
Run Code Online (Sandbox Code Playgroud)
但它似乎只是打印屏幕上的所有drump而不是将它管道到mysqladmin util.是否有任何建议可以改善这一点?
我有一个现有的TFS项目,其结构与此类似:

我在框架目录中创建了一个包含2个项目的解决方案.
然后我将Cerberus&Cerberus.Mvc作为现有项目添加到OnFaitQuoi解决方案中.(注意先前检查了cerberus溶液).
当我签入我的项目时,我遇到了一些错误,包括:

这是否意味着TFS azure不支持这种情况,或者只是我在某处犯了错误?
c# ×4
.net ×1
ads ×1
asp.net ×1
async-await ×1
azure ×1
azure-devops ×1
deployment ×1
javascript ×1
linux ×1
mysql ×1
mysqldump ×1
openx ×1
php ×1
poco ×1
tfs ×1
this ×1
versioning ×1