当TransactionScope第一次出现时,我遇到了一些严重的问题,让它在我的开发机器(XP)和我们的数据库服务器(Windows Server 2003)之间工作.
当我更多地研究它时,这似乎是一个棘手而广泛的问题,有可能成为生产中的头疼,所以我决定不以这种方式处理事务(即使我喜欢语法很多而且我真的想要它上班).
这些问题是否仍然存在或者使用安全吗?你现在经常使用它没有问题吗?
非常感谢!
注意:现在已经很久了,但我认为这个问题与Distribute Transaction Coordinator有关.我摆弄了很长一段时间,但从来没能让它发挥作用.
在配置文件中,我有以下设置
sessionState mode ="InProc"cookieless ="false"
这是否表示会话ID在cookie中?如果是,那么它是如何被选中并发送到服务器的,以及如何在回发中验证它.
如果在我的浏览器中禁用cookie会发生什么,会话(sessionid和会话变量)是否仍会被创建?
其中(默认路径)是默认为会话创建和存储的cookie,我可以更改路径吗?
会话cookie中存储了哪种格式和类型的数据?
如果我在会话中存储一个类对象,那么实际存储在cookie中的是什么?
此外,如果我使用身份验证模式作为cookie的表单,那么如果在浏览器中禁用cookie会发生什么?
我们将应用程序从物理服务器迁移到 Azure VM(一台 Web 服务器、一台数据库服务器),并且它在大部分情况下运行良好。
昨晚,由于某种待定原因,Web 服务器离线,导致出现中断,当它恢复时,连接字符串开始失败...所有错误都是找不到网络路径的类型。
我知道虚拟机的内部 IP 可以在我的关联组内更改,但我没有看到很多关于我应该使用哪个 IP 或名称的直接答案。
现在我的连接字符串如下所示:
Server=MyDatabaseServerName;Database=xxxx;User ID=xxxx;Password=xxxx;
Run Code Online (Sandbox Code Playgroud)
我觉得也许 MyDatabaseServerName 暂时将错误的 IP 解析为错误,也许我应该使用我的 cloudapp.net 名称,如下所示:
Server=xxx.cloudapp.net, 1433;Database=xxxx;User ID=xxxx;Password=xxxx;
Run Code Online (Sandbox Code Playgroud)
...但我担心它会一路传到互联网并返回。
那么去这里最安全的方法是什么?
我正在尝试向Serilog添加动态自定义属性,但我不确定如何以我想要的方式执行此操作.这是代码:
if (data.Exception != null)
{
_logger.ForContext("Exception", data.Exception, true);
}
await Task.Run(() =>
_logger.ForContext("User", _loggedUser.Id)
.Information(ControllerActionsFormat.RequestId_ExecutedAction, data.RequestId, data.ActionName)
);
Run Code Online (Sandbox Code Playgroud)
但是Exception属性没有被持久化.我试过了:
await Task.Run(() =>
_logger.ForContext("Exception", data.Exception, true)
.ForContext("User", _loggedUser.Id)
.Information(ControllerActionsFormat.RequestId_ExecutedAction, data.RequestId, data.ActionName)
);
Run Code Online (Sandbox Code Playgroud)
它工作正常,但有时我必须先处理数据才能使用它(比如迭代包含方法参数的字典).我对这些想法持开放态度.
现在刚刚学习 ASP.NET Core,在一些指南中我看到了 app.UseEndpoints() 方法。
但是当我创建我的 ASP NET CORE 项目时,我只在 StartUp.cs 中看到了 app.Run
app.UseEndpoints(endpoints => { endpoints.MapHub<ChatHub>("/chat"); });
我正在尝试在 Blazor 中实现面包屑。似乎没有任何机制可以将数据上游传递到布局级别,所以我想知道人们是如何管理它的。
这是我的布局的简化版本:
<header>
<Toolbar />
<Breadcrumbs></Breadcrumbs>
</header>
<main class="mt-5">
@Body
</main>
Run Code Online (Sandbox Code Playgroud)
这个想法是在任何给定的 Blazor 页面上,我希望能够设置面包屑。但是我的页面无法与布局或面包屑组件交互。
我考虑过/尝试过的事情:
在这个古老的 GitHub 问题中,Steve Sanderson 回应了类似的需求,但他的解决方法是侵入性的。我希望现在有更好的东西:https : //github.com/dotnet/aspnetcore/issues/16009
这很有趣,但最终没有帮助:Blazor:从布局访问参数
我主要是一名.NET开发人员,仅在那个领域,任何时候都有可能接近十几种引人入胜的新兴技术,其中一些是真正的游戏改变者,我很乐意深入研究.
可悲的是,这似乎超出了人的能力范围.
我读过Rocky Lhotka(.NET传奇,CSLA的发明者等)的一篇文章,他几乎顺便提到,去年他对变化的速度感到非常可怕.他听起来似乎不太可能继续保持在最前沿,也许他不会那么努力,因为它是徒劳的.
令我惊讶的是,真正的天才如Lhotka(他们可能会花费大量时间玩最新技术并且应该能够快速提取东西)也感受到了燃烧!
那么,你们怎么处理这个?你是否只是认识到发展是巨大的事实,能够快速找到事情比学习它更重要吗?或者你有继续教育策略,实际上让你保持接近最前沿?
我正在为我的组织建立一些新的源代码控制最佳实践,所以过去几天我一直沉浸在像TreeSurgeon这样的事情中.
我看到的一件事是,最好的做法是将您的引用包含在源代码控制树中,但是在一个单独的目录(lib/in tree surgeon)中,而不是直接使用代码,因为它们自然出现在ASP.NET项目中.
我知道为什么直接在bin文件夹中对它们进行控制是很糟糕的一些原因,但是我想了解大局,包括在从源代码控制中下载代码之后如何将这些引用重新引入到ASP.NET项目中在一台新鲜的机器上.
提前致谢!
布赖恩
我一直在从可空整数的一些意外行为中拉出我的头发.
Integer
为Nothing
,它会变得Nothing
如预期的那样.Integer?
的String
是Nothing
,它变成0!当然,我得到这个我是否显式转换String
到Integer?
或没有.
我意识到我可以很容易地解决这个问题,但我想知道我错过了什么.
Dim NullString As String = Nothing
Dim NullableInt As Integer? = CType(NullString, Integer?) 'Expected NullableInt to be Nothing, but it's 0!
NullableInt = Nothing 'This works, of course. NullableInt is Nothing.
Run Code Online (Sandbox Code Playgroud)
编辑:以前我把我的代码放在这里,所以没有明确的转换Integer?
,每个人似乎都被这个混淆/困惑.Option Strict On有很多建议会抓住这类东西.然而,这实际上是字符串到整数转换规则的一个怪癖,它早于可空类型,但仍会影响它们.
是否有可能创建一个返回未指定类型的泛型的函数,像这样?
Public Function Create(ByVal type As Type) As DeserializationHelper(Of )
Dim DynamicHelper = GetType(DeserializationHelper(Of )).MakeGenericType(type)
Return Activator.CreateInstance(DynamicHelper)
End Function
Run Code Online (Sandbox Code Playgroud)
除了强烈输入返回值之外,一切都在这里工作.我可以将它作为对象,非泛型接口或非泛型基类返回,但我正在尝试制作一个非常简洁流畅的样式API.
我正在尝试创建这样的语法:
Dim Loader As New XLoader(parentContainer, Map)
Dim MyCreature As Creature = Loader.Create(GetType(Creature)).From(xml.<Creature>)
Run Code Online (Sandbox Code Playgroud)
...是的,我知道有内置的xml序列化程序 - 我希望它们能为我工作,但我需要更多的控制权.;)
如果我将这部分移动到另一个项目并用C#编写(然后从VB.NET项目中使用它),C#的Dynamic关键字会帮助我吗?
谢谢.:)