在我们的大型企业项目中,我们遇到的情况似乎没有在互联网上的文章和帖子中得到很好的描述.
我们需要将支持SPA的现有JavaScript基础结构代码与其他团队在TypeScript上开发的代码集成在一起.对于许多政治限制和可用的开发资源,我们无法彻底改变方法(即只选择一种语言).我们完全理解,将两个基础架构集成在一起并不是一个好主意,这些基础架构是用不同的语言编写的.
我们还需要评估从JavaScript代码调用TypeScript的影响和最佳实践.
TypeScript基本上被编译成JavaScript的理由似乎很模糊,因为关于如何从手写JavaScript中正确使用已编译的JavaScript以及隐藏的警告(或替代方案)的主题信息上没有可信赖的来源.
看起来,当TypeScript代码需要调用JavaScript时,相反的情况令人惊讶地被很好地描述.
对这个话题有什么深刻的想法?
UPD
具体来说,这是我们现在寻求答案的问题清单:
实际上我们认为我们尚未提出所有问题.在经过几个小时的思考之后,他们才刚刚出现.
我们的cshtml文件中有一大块C#代码,必须以cshtml和其他地方呈现(显然这不是一个很好的案例,但这是另一个问题).
我们如何能够折叠或隐藏这些代码块以使我们的设计人员更顺畅地工作?我们还希望在使用标记进行演示的过程中隐藏这些代码块.
真正的问题是我们还必须将可视化表示保存到SVN中.
这个或插件是否有任何本机VS 2010功能?也许有机会使用"部分"cshtml页面,其中所有标记将在一个文件中,所有C#代码将在另一个文件中?
不幸的是,VS不会在这些文件中崩溃#region指令中的C#代码块.
最终,ASP.NET视图中存在类似的问题区域?但是当使用"折叠标记"上下文菜单操作项时,它没有给出如何保存折叠表示的答案.
似乎在VS中的类图设计器中存在一个非常烦人的问题(我的版本是2010 Ultimate,发布,但在VS 2008中也观察到了这个问题).
当我尝试从DLL创建特定简单类的类图时,我收到以下错误:"某些选定的类型无法添加到类图中.检查代码是否有错误并确保所有所需的集会...... blah-blah-blah".我无法找到问题的根本原因,我无法区分类的哪些特征会影响该错误(它实际上可以为某些类构建类图,但不能为所有类构建类图).
我的代码不包含任何错误.我在一个单独的.cs文件中有多个类和接口定义,但这些类非常简单 - 甚至没有调用非托管/互操作.
对此有何解决方案?
最近我偶然发现了一个非常奇怪的生产代码,似乎是在某些情况下,Angular可能会$locationChangeStart在初始页面加载时触发事件.此外,next参数值将等于该current值.这对我来说似乎很奇怪.
我没有找到任何相关的文件,但这里是显示这种情况的小提琴http://jsfiddle.net/tJSPt/327/
可能唯一的区别是在生产中我们使用手动Angular bootstrap.
任何人都可以解释或指向信任的信息来源,说明为什么在页面加载时触发了该事件?这是我们必须要做的事情,还是当前Angular实现的特殊性或我们使用它的方式?
在我的解决方案中,我写了以下内容:
[DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]
[return: MarshalAs(UnmanagedType.Bool)]
static extern unsafe bool CopyFileEx(string lpExistingFileName,
string lpNewFileName, CopyProgressRoutine lpProgressRoutine, IntPtr lpData,
Boolean* pbCancel, CopyFileFlags dwCopyFlags);
...
bool result;
unsafe{
result = CopyFileEx(sourceFile, targetFile, null, IntPtr.Zero,
null /* pointer */, 0);
}
if(!result)
Win32Exception exc = new Win32Exception(Marshal.GetLastWin32Error());
// parameter could be omitted according to Win32Exception constructor
// implementation
Run Code Online (Sandbox Code Playgroud)
假设CopyFileEx是使用DllImport属性的SetLastError = true参数导出的,我是否有机会在此处获取任何未定型异常?
我特别感兴趣的是包含在RuntimeWrappedException实例中的非CLR异常.在C++中,"throw 1"是一个有效的构造.那么我应该从这样的P/Invoke调用中获得什么异常,哪些我可以获得有关异常的信息(MSDN对CopyFileEx中的异常没有任何说明)?
我在现有实现中有以下代码行
DateTime.TryParseExact(
"15/11/2021 00:00:00",
"dd/MM/yyyy HH:mm:ss",
null,
DateTimeStyles.None,
out maturityDate);
Run Code Online (Sandbox Code Playgroud)
返回false表示无法解析传递的字符串.这对我来说真的很令人惊讶,因为这里的模式似乎是准确的.根据null第三个参数内的MSDN 值意味着将使用当前的文化信息(我假设它是Thread.CurrentThread.CurrentCulture).
Thread.CurrentThread.CurrentCulture在监视窗口中en-US,但是文档信息的实例稍后在代码中的某处被更改(日期时间格式化程序或其他内容).
当我通过CultureInfo.InvariantCulture或new CultureInfo("en-US")一切都好.
任何人都可以说什么导致TryParseExact这里失败的时候null通过?类似的问题对我没有任何线索.