在各种数据库表中,我有一个属性和一个值列.我正在使用Linq to SQL来访问数据库.
我正在编写一个方法,它返回一个包含从给定数据库表中检索的属性/值的字典:
private static Dictionary<string, string> GetProperties<T>(Table<T> table)
{
Dictionary<string, string> properties = new Dictionary<string, string>();
foreach (var row in table)
{
properties[row.Property]=row.Value;
}
return properties;
}
Run Code Online (Sandbox Code Playgroud)
编译后,我得到:
Error 1 The type 'T' must be a reference type in order to use it as parameter 'TEntity' in the generic type or method 'System.Data.Linq.Table<TEntity>'
我试过没有运气的搜索这个错误信息.
搜索StackOverflow时,这个问题似乎相似,但是关于参数List:Generic List <T>作为方法的参数 - 尽管参数仍然不是该问题的答案中的引用类型.
阅读MSDN上的C#编程指南:http://msdn.microsoft.com/en-us/library/twcad0zb(VS.80).aspx我看到他们的例子都通过引用传递参数.但是,在我的特定情况下,我无法看到如何通过引用传递,因为泛型类型仅用于指定Table的泛型类型.
任何指针都将非常感激.
PS:如果我需要时间接受答案,可能会出现这种情况,因为目前无法访问此功能(我是盲人并使用屏幕阅读器).
我正在将 Xamarin.Android 项目移植到 .Net 6。
由于依赖关系,不可能将 Xamarin.Essentials 包含在 .Net 6 项目中。
因此,我将所有内容切换为使用 Microsoft.* 命名空间。除了 Xamarin.Essentials.Platform.CurrentActivity 之外,这很容易。
.Net MAUI 是否有此类的等效项?如果没有,除了将 Essentials 中的代码复制/粘贴到应用程序之外,还有其他好的选择吗?
我定义了以下路线:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(name: "Homepage", url: "", defaults: new { controller = "Restaurants", action = "Search" });
routes.MapRoute(name: "About", url: "about", defaults: new { controller = "Home", action = "About" });
routes.MapRoute(name: "Disclaimer", url: "disclaimer", defaults: new { controller = "Home", action = "Disclaimer" });
routes.MapRoute(name: "Contact", url: "contact", defaults: new { controller = "Home", action = "Contact" });
routes.MapRoute(name: "RestaurantDetails", url: "{id}/{slug}", defaults: new { controller = "Restaurant", action = "Details" });
routes.MapRoute(name: "RestaurantLocationDetails", …Run Code Online (Sandbox Code Playgroud) 我正在将WPF应用程序转换为Silverlight.
该应用程序包含一个继承自Shape的类.它会覆盖DefiningGeometry属性以返回Path对象.但是,Silverlight Shape类没有DefiningGeometry属性.
在互联网上阅读我发现其他人有同样的问题.该解决方案似乎涉及直接从Control继承,并将Content属性设置为路径.但是,我还想保留我的事件处理程序(MouseEnter,MouseLeave,GotFocus,LostFocus)以及我希望保持它的位置并按比例调整应用程序的其余部分.
我主要是一个后端开发人员,所以这不是我的强项 - 如果有人能给我一个如何实现这一目标的大纲样本,我会很感激.
为了使用HTML5画布,我决定制作一个绘制模拟表盘的应用程序.一切都很好,除了旧的线条没有像我期望的那样被抹去.我已经包含了下面的部分代码 - DrawHands()每秒调用一次:
var hoursPoint = new Object();
var minutesPoint = new Object();
var secondsPoint = new Object();
function drawHands()
{
var now = new Date();
drawLine(centerX, centerY, secondsPoint.X, secondsPoint.Y, "white", 1);
var seconds = now.getSeconds();
secondsPoint = getOtherEndOfLine(centerX, centerY, 2 * Math.PI / 60 * seconds, 0.75 * radius);
drawLine(centerX, centerY, secondsPoint.X, secondsPoint.Y, "black", 1);
drawLine(centerX, centerY, minutesPoint.X, minutesPoint.Y, "white", 3);
var minutes = now.getMinutes();
minutesPoint = getOtherEndOfLine(centerX, centerY, 2 * Math.PI / 60 * minutes, 0.75 * radius); …Run Code Online (Sandbox Code Playgroud) 我有一个 C# Azure Function 项目,具有多种功能。
其中一项功能是提供一些 HTML 内容。目前可以在/api/home 访问该功能。但是,我希望针对根/URL 触发它。
我在我的项目中添加了一个 proxies.json 文件:
{
"Home": {
"matchCondition": {
"methods": ["GET"],
"route": "/"
},
"backendUri": "https://localhost:7071/api/home"
}
}
Run Code Online (Sandbox Code Playgroud)
但这仍然没有效果 - 它继续提供默认的 Azure Fucntions 网页。
有什么办法可以做到这一点吗?
在一个程序中,我正在读取一些数据文件,其中一部分格式化为一系列记录,每个记录都放在方括号中.每条记录都包含一个部分标题和一系列键/值对.
我最初编写代码来循环并提取值,但决定使用正则表达式可以更优雅地完成.下面是我生成的代码(我刚刚在控制台应用程序中将其破解 - 所以知道变量名称不是很好,等等.
你能建议改进吗?我觉得没有必要做两个匹配和一个子串,但无法弄清楚如何在一个大步骤中完成所有操作:
string input = "[section1 key1=value1 key2=value2][section2 key1=value1 key2=value2 key3=value3][section3 key1=value1]";
MatchCollection matches=Regex.Matches(input, @"\[[^\]]*\]");
foreach (Match match in matches)
{
string subinput = match.Value;
int firstSpace = subinput.IndexOf(' ');
string section = subinput.Substring(1, firstSpace-1);
Console.WriteLine(section);
MatchCollection newMatches = Regex.Matches(subinput.Substring(firstSpace + 1), @"\s*(\w+)\s*=\s*(\w+)\s*");
foreach (Match newMatch in newMatches)
{
Console.WriteLine("{0}={1}", newMatch.Groups[1].Value, newMatch.Groups[2].Value);
}
}
Run Code Online (Sandbox Code Playgroud) 我的Web服务器上的文件夹中有许多GIF /dir/subdir/bla.gif.
在同一台服务器上是Silverlight 3应用程序/ClientBin/bla.xap.
有没有办法在Silverlight应用程序中显示GIF?
我已经尝试过<Image x:Name=img" />然后在代码设置this.img.Source=new BitmapImage(new Uri("/dir/subdir/bla.gif"))中没有成功.
欢迎任何想法.
我正在使用Razer语法玩MVC3,不过我认为问题更为笼统.
在控制器中,我有类似的东西:
ViewModel.User = New User(); // The model I want to display/edit
ViewModel.SomeOtherProperty = someOtherValue; // Hense why need dynamic
Return View();
Run Code Online (Sandbox Code Playgroud)
我的视图继承自System.Web.Mvc.ViewPage
但如果我尝试做类似的事情:
<p>
@Html.LabelFor(x => x.User.Name
@Html.EditorFor(x => x.User.Name
</p>
Run Code Online (Sandbox Code Playgroud)
我收到错误:"表达式树可能不包含动态操作"
但是,使用ViewPage似乎很常见,编辑器/ LabelFor也是如此.因此,如果没有办法做到这一点,我会感到惊讶 - 欣赏任何指针.
我正在使用 getUserMedia 函数从网络摄像头录制视频。一切工作正常,除了当我刚刚指定 video: true 约束时它仅以 640x480 分辨率录制。
如果我设置如下约束,我现在可以在笔记本电脑上获得更好的录音质量:
var mediaConstraints = {
audio: true,
video: {
width: { min: 1280 },
height: { min: 720 }
}
};
Run Code Online (Sandbox Code Playgroud)
但是,如果另一台设备的分辨率高于 1280x720,或者甚至更低,该怎么办?
我尝试将 min 设置为非常低,将 max 设置为非常高;但它只是默认为 640x480,或者根本没有给出任何内容。我也尝试设置所需的大小,但正如预期的那样 - 我最终得到了该值。如果我将“期望”设置得非常高(因此它会选择最接近的可用值),那么我最终将一无所获。
那么问题是,如何设置约束以获得相机可以提供的最大分辨率?
asp.net-mvc ×2
c# ×2
html ×2
javascript ×2
silverlight ×2
android ×1
dynamic ×1
getusermedia ×1
gif ×1
html5-canvas ×1
image ×1
imagesource ×1
linq-to-sql ×1
maui ×1
regex ×1
routes ×1
shape ×1
video ×1
wpf ×1
xamarin ×1
xaml ×1