小编Dan*_*ook的帖子

由于外键约束,实体框架迁移不能删除表

我已将现有数据库反向设计为代码优先模型.一些表将被保留,但大多数表将被删除并完全重新构建为新版本.

我删除了一些旧类及其映射和添加迁移.

迁移看起来像这样:

  public override void Up()
        {
            DropForeignKey("dbo.Bingo_Review", "BingoID", "dbo.Bingo");
            DropForeignKey("dbo.Bingo_Review_Text", "BingoReviewID", "dbo.Bingo_Review");
            DropForeignKey("dbo.Bingo_Bonus", "BingoID", "dbo.Bingo");
            DropForeignKey("dbo.Bingo_Bonus_Amount", "BingoBonusID", "dbo.Bingo_Bonus");
            DropIndex("dbo.Bingo_Bonus", new[] { "BingoID" });
            DropIndex("dbo.Bingo_Review", new[] { "BingoID" });
            DropIndex("dbo.Bingo_Review_Text", new[] { "BingoReviewID" });
            DropIndex("dbo.Bingo_Bonus_Amount", new[] { "BingoBonusID" });
            DropTable("dbo.Bingo_Bonus");
            DropTable("dbo.Bingo");
            DropTable("dbo.Bingo_Review");
            DropTable("dbo.Bingo_Review_Text");
            DropTable("dbo.Bingo_Bonus_Amount");
            DropTable("dbo.Bingo_Bonus_Type");
        }
Run Code Online (Sandbox Code Playgroud)

但是,当我运行迁移时,我在包管理器控制台中收到以下错误.

Could not drop object 'dbo.Bingo_Bonus' because it is referenced by a FOREIGN KEY constraint.
Run Code Online (Sandbox Code Playgroud)

为什么在迁移应该在drop table命令之前删除了任何外键时出现此错误?有没有办法解决?

entity-framework ef-migrations

16
推荐指数
2
解决办法
2万
查看次数

如何在超时期限后取消任务等待

我正在使用此方法以编程方式实例化Web浏览器,导航到URL并在文档完成时返回结果.

如果文档加载时间超过5秒,我将如何停止TaskGetFinalUrl()返回null

我见过许多使用a的例子,TaskFactory但我无法将其应用于此代码.

 private Uri GetFinalUrl(PortalMerchant portalMerchant)
    {
        SetBrowserFeatureControl();
        Uri finalUri = null;
        if (string.IsNullOrEmpty(portalMerchant.Url))
        {
            return null;
        }
        Uri trackingUrl = new Uri(portalMerchant.Url);
        var task = MessageLoopWorker.Run(DoWorkAsync, trackingUrl);
        task.Wait();
        if (!String.IsNullOrEmpty(task.Result.ToString()))
        {
            return new Uri(task.Result.ToString());
        }
        else
        {
            throw new Exception("Parsing Failed");
        }
    }

// by Noseratio - http://stackoverflow.com/users/1768303/noseratio    

static async Task<object> DoWorkAsync(object[] args)
{
    _threadCount++;
    Console.WriteLine("Thread count:" + _threadCount);
    Uri retVal = null;
    var wb = new WebBrowser();
    wb.ScriptErrorsSuppressed = …
Run Code Online (Sandbox Code Playgroud)

.net c# console-application webbrowser-control task-parallel-library

13
推荐指数
1
解决办法
2万
查看次数

使用scrollbars = no在window.open之后启用浏览器滚动条

我有一个现有的链接,在新窗口中打开一个网页,其中滚动条被禁用,如下所示:

<a onclick='window.open("example.html", "name", "resizable=1,scrollbars=no,width=500,height=200");' href='#'>Click to pop up without scroll bars</a>
Run Code Online (Sandbox Code Playgroud)

为了论证,我无法更改此window.open()代码.我需要在窗口打开后启用滚动条.

这在IE中使用以下代码:

 <script type="text/javascript">
    onload=function()
        {
    enableScrolling();
    }
    function enableScrolling()
    {
      document.body.scroll = "yes"; // IE 
    }
 </script> 
Run Code Online (Sandbox Code Playgroud)

但是,这在FireFox或Chrome中不起作用.

根据这个页面,下面的代码应该适用于FireFox和Chrome,但它不适用(也许这在早期版本中有效?)

      document.documentElement.style.overflow='scroll';
      document.body.style.overflow='scroll';
Run Code Online (Sandbox Code Playgroud)

有没有人知道在禁用滚动条打开窗口后是否可以在FireFox和Chrome中启用滚动条?

html javascript cross-browser

12
推荐指数
1
解决办法
3万
查看次数

Visual Studio Team Services版本定义 - 重命名文件的任务?

如何在Visual Studio Team服务中的发布定义中重命名文件?是否有可用的内置或市场任务,如何实现?

回答:

  1. 从市场中添加"内联PowerShell"任务
  2. 在文本区域中输入以下PowerShell代码

    Param
    (
     [string]$pathToFileToRename
    )
    
    Rename-Item $pathToFileToRename NewName.txt
    
    Run Code Online (Sandbox Code Playgroud)
  3. 例如,在参数文本框中输入任何必需的参数(您可以使用环境变量).

    pathToFileToRename $(System.DefaultWorkingDirectory)/somepath/CurrentName.txt
    
    Run Code Online (Sandbox Code Playgroud)

tfsbuild ms-release-management azure-devops

12
推荐指数
1
解决办法
4592
查看次数

如何设置Xamarin.Android APK的包名称为Google Play提交

我工作8个月后完成了我的应用程序,并且我正在尝试提交到Google Play.

我正确签名并对齐APK并将APK上传到Google Play.然后我收到以下消息:

上传失败您的APK包名称必须采用以下格式"com.example.myapp".它可能包含字母(az),数字和下划线(_).它必须以小写字符开头.

这是AndroidManifest.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"     android:installLocation="auto" package="com.vrocket.launcher" android:versionName="1.30.637" android:versionCode="1">
    <uses-sdk android:targetSdkVersion="14" />
    <application android:hardwareAccelerated="true" android:label="launchpad">
        <provider android:name="com.vrocket.launcher.LocalFileContentProvider" android:authorities="com.vrocket.launcher" />
    </application>
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
</manifest>
Run Code Online (Sandbox Code Playgroud)

据我所知,我在此指定的包名称符合Google Play提交的要求.自从我启动项目以来,我确实在Android.Manifest中更改了我的包名,但我认为这是非常正常的做法.

是否有人向Google Play提交过类似的Xamarin.Android应用?

编辑:

我已经发现APK正在使用旧包名编译VRocket.VRocket.我发现这是使用aaptAndroid SDK中的工具.为什么不使用指定的包名构建AndroidManifest.xml

xamarin.android google-play xamarin

9
推荐指数
1
解决办法
8899
查看次数

在 GitHub 操作中获取批准状态

我有一个在添加标签时触发的操作。

pull_request: types: [labeled]

仅当拉取请求获得批准(有一个或多个批准)并且另一个条件正常工作时,该作业才应该有条件地运行:

jobs:
  build:
    if: ${{ (something == 'approved') && (contains(github.event.pull_request.labels.*.name, 'Deployed for QA')) }}
Run Code Online (Sandbox Code Playgroud)

我可以使用什么属性来代替上述条件中的“某物”?

github-actions

9
推荐指数
2
解决办法
4815
查看次数

如何防止highcharts用省略号缩短标签

Highcharts正在截断子弹图上的x轴标签.我想防止这种情况发生,并始终显示全文而不缩短.

在此输入图像描述

我试过了

.highcharts-container { overflow: visible !important; }
.highcharts-axis-labels text
    { 
    overflow: visible !important;  
}
Run Code Online (Sandbox Code Playgroud)

但看起来SVG正在进行截断和省略,而不是通过查看渲染的标记来判断CSS.

<text x="229.0625" style="color: rgb(96, 96, 96); cursor: default;     font-size: 9px; padding: 0px; fill: rgb(96, 96, 96);" text-anchor="middle"   transform="translate(0,0)" y="32" opacity="1">
<tspan>47…</tspan>
<title>47.5k</title>
</text>
Run Code Online (Sandbox Code Playgroud)

我试过在javascript中添加以下属性:

labels: {
    autoRotation: false,
    style: {
    width: '200px',
    'min-width': '200px'
},
Run Code Online (Sandbox Code Playgroud)

但它不起作用.如何防止highcharts截断标签文本?

highcharts

6
推荐指数
1
解决办法
7448
查看次数

防止Android WebView在Xamarin环境中重新加载页面

我意识到有很多与此相关的问题,但我已经尝试了所有本地开发的解决方案,并且无法让它们在Xamarin下工作.

我有一个webview,其中加载了一个URL,其中包含用于绘图的图形UI.当设备旋转时,webview会重新加载页面,并且用户的工作将丢失.

以下博客文章为此提供了最佳解决方案,并解释了广泛记录的解决方案由于以下原因而不足够:

http://www.devahead.com/blog/2012/01/preserving-the-state-of-an-android-webview-on-screen-orientation-change/

这个实现的主要问题是,无论何时旋转屏幕,都会再次创建> WebView,因为活动被销毁并且其saveState方法不会>保存完整状态,但只有一部分类似于URL的URL已加载的页面和>浏览历史记录.因此,例如,在屏幕方向改变之后,不会>保留缩放和滚动位置,有时会从网络重新加载页面.

所以我已经实现了他们的解决方案,将它从Java移植到Xamarin C#.它看起来很有希望,但每当我的活动重新加载并调用InitUi时,web_view类变量始终为null,而该示例依赖于此类变量在设备轮换之间保持其值.

任何人都知道为什么web_view失去了它的价值?

这是我的代码,它与文章完全相同,但移植到Xamarin C#.

public class EbookViewerActivity : ActionBarActivity
{
    protected WebView web_view;
    protected FrameLayout webViewPlaceholder;

    Button loadButton;
    Button downloadButton;
    EditText testUrlText;
    private string viewerPath;

    protected override void OnCreate(Bundle savedInstanceState)
    {
        #region Set up activity and action bar

        //Create the activity screen and initialise the action bar
        base.OnCreate(savedInstanceState);
        RequestWindowFeature(WindowFeatures.NoTitle);
        SetContentView(Resource.Layout.Viewer);
        InitializeActionBar();

        //Set action bar button delegates
        ActionBar
            .AddLeftAction(new DelegateAction(Finish, Resource.Drawable.CloseIcon))
            .SetTitle("Ebook Annotator");

        //Set action bar logo
        ActionBar.SetHomeLogo(Resource.Drawable.AcmeTrainingLogo);
        #endregion

        InitUi();
    }

    private void InitUi() …
Run Code Online (Sandbox Code Playgroud)

android xamarin.android xamarin

5
推荐指数
1
解决办法
2285
查看次数

为每个版本环境转换Azure网站部署的web.config

在Visual Studio Team Services(Visual Studio Online)中,我有三个发布环境,每个环境都有一个Azure Website Deploy步骤.

我可以通过指定拾取Web.Uat.config的"BuildConfiguration"变量(例如Uat)来转换构建步骤的web.config.

但是我有多个使用此构建配置的发布环境,它们都需要转换Web配置(例如Dev,Test,Uat,Live).

是否可以在Azure网站部署步骤之前指定要用于每个发布环境的Web配置转换?

注意:我意识到可以在Azure门户网站的"所有设置"下为网站指定简单的appsettings和connectionstrings,但我需要做的不仅仅是转换这些简单的设置,并且已经为我的解决方案中的每个环境配置了Web配置转换

azure-deployment azure-devops

5
推荐指数
1
解决办法
2111
查看次数

Visual Studio 2019 键盘停止响应或连续重复字符

使用 Visual Studio 2019 Enterprise (v16)(安装了 Resharper 和适用于 Resharper 的 StyleCop 扩展)时,经常会出现以下键盘问题(每天多次)。

  1. 键盘上输入的键未被输入
  2. 在键盘上输入的按键会以错误的顺序输入(甚至打字速度很慢),如下所示:

在此输入图像描述

  1. 输入的键(包括 CTRL+V)会连续重复,如下所示:

在此输入图像描述

暂时解决该问题的唯一方法是关闭 Visual Studio 并重新打开,它将正常工作 5-60 分钟,然后问题再次出现。

采取的步骤:

  1. 将廉价的外接键盘替换为更昂贵的外接键盘 (Logitech G213)
  2. 拔掉除鼠标和键盘之外的所有 USB 设备
  3. 重新安装 Visual Studio

这些步骤都没有解决问题。我还没有尝试卸载 Resharper/Stylecop,因为我的日常工作确实需要它们。

以前有人见过/解决过这个问题吗?

keyboard resharper stylecop visual-studio visual-studio-2019

5
推荐指数
1
解决办法
2487
查看次数