čtvrtek 8. března 2018

Globalizace MVC aplikace

Nastavení ve WebConfigu

<system.web>
<globalization uiCulture="en" culture="en-AU" />
</system.web>

Přebije  výchozí nastavení systému. Pokud OS má výchozí jazyk EN pak IIS spouští aplikace jako anglické pokud není uvedeno ve WebConfigu explicitně jinak nebo nedojde k přepnutí během běhu programu.

např. v Global.asax  v metodě Application_BeginRequest
protected void Application_BeginRequest()
        {
           // nastavení jiné Culture
        }

úterý 6. března 2018

Jak vyhledat záznam podle počátečního písmene bez ohledu na diakritiku nebo velikost písmene?

Řetězce v požadovaném sloupci např. Title je potřeba porovnávat CI (Case Insensitive) - bez ohledu na velikost, AI (Accent Insensitive) - bez ohledu na diakritiku.


SELECT *
FROM [dbo].[Company]
WHERE [Title] COLLATE Latin1_General_CI_AI LIKE 'c%'

Zdroj:
https://stackoverflow.com/questions/3578582/how-can-i-remove-accents-on-a-string
https://stackoverflow.com/questions/14400856/entity-framework-case-insensitive-contains

středa 31. ledna 2018

Jak zjistím jak dlouho se to bude tisknout a kolik mě to bude stát?


Cura

Cura Vám umožní měnit nastavení tisku a sledovat jak se mění doba tisku a spotřeba materiálu.
Model na obrázku se bude například tisknout 6 hodin a 15 minu. To ale jen díky tomu že infill (výplň modelu) máme nastavenou na 10%.

Při jeho tisku se spotřebuje 78g materiálu.
Pokud tiskneme z PLA kde 750g stojí 550,- pak nás jeden gram stojí 0,74 Kč z toho pak spočítáme cenu materiálu na vytisknutí modelu 57,72 Kč

Pokud by jsem chtěli plnou výplň (infill 100%) tak se model bude tisknout celý den a spotřebujeme polovinu špulky (cca 350g) tisk by nás potom přišel na 260.- Kč

https://ultimaker.com/en/products/ultimaker-cura-software

středa 13. prosince 2017

pondělí 4. prosince 2017

Vývoj aplikace pro Android - Začátek

Instalace Android Studia

https://developer.android.com/studio/install.html

Zapnout na telefonu vývojářský režim

  1. Otevři nastavení telefonu.
  2. Sjeď úplně dolů kde je O zařízení
  3. Sjeď dolů na číslo sestavení a ťukni na něj 7x
  4. Vrať se zpět kde se objeví nová položka menu Vývojářské možnosti
https://developer.android.com/studio/debug/dev-options.html#general

Časový rozvrh (~2,5hod)

  1. Stažení aplikace Android Studio - 20min
  2. Instalace Android studio - 4min
  3. Inicializace Android Studia - 25min
  4. Zprovoznění debugování a emulátoru - 70min
  5. Vývoj jednoduché výpočetní aplikace - 23min

Layout

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="20dp"
android:orientation="vertical" >
https://developer.android.com/guide/topics/ui/layout/linear.html

String to Float

Float f = Float.parseFloat(s);
https://stackoverflow.com/questions/10735679/how-to-convert-string-into-float-value-in-android

Button Click Event

Frontend
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="btnCalculate_Click"
android:text="Vypočítat"
/>
Backend
public void btnCalculate_Click(View v)
{
txtResult = (TextView)findViewById(R.id.txtResult);
txtWeight1 = (TextView)findViewById(R.id.txtWeight1);
txtWeight2 = (TextView)findViewById(R.id.txtWeight2);
float weight1 = Float.parseFloat(txtWeight1.getText().toString());
float weight2 = Float.parseFloat(txtWeight2.getText().toString());
float value = (weight2-weight1)/weight2*100;
txtResult.setText("Výsledek je: " + value + "%");
}
https://www.youtube.com/watch?v=RCyuqMVGl4g
https://www.youtube.com/watch?v=6qo_Opqjhew

úterý 3. října 2017

Testování PopUp pomocí Selenia

        [Test]
        public void WaitOnPopUp()
        {
            IWebDriver driver = new OpenQA.Selenium.Firefox.FirefoxDriver();
            driver.Navigate().GoToUrl("http://dinbror.dk/bpopup/");

            var list = driver.FindElements(By.CssSelector(".button.small.pop2"));
            list[4].Click();



            var w = new WebDriverWait(driver, TimeSpan.FromSeconds(30));
            w.Until((d) => {
                bool x = false;
                try {
                    x= driver.FindElement(By.XPath("//*/div[@id='popup2']/*/img")) != null;
                }
                catch (Exception ex)
                {
                }
                return x;
            } );

            driver.Close();
        }

XPath helper do Chrome

Při psaní UI testů se dost často hodí vyhledat ve stránce element pomocí XPath. Rozšíření do prohlížeče Chrome dokáže tuto otravnou činnost dost usnadnit.
Do levé části doplňku píšete XPath dotaz a v pravé se Vám zobrazuje výsledek dotazu.




Zdroj: 
https://chrome.google.com/webstore/detail/xpath-helper/hgimnogjllphhhkhlmebbmlgjoejdpjl?utm_source=chrome-app-launcher-info-dialog